Sign in to follow this  

Unity OCaml?

This topic is 4823 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Has anyone here tried OCaml for game development? Anyone actually using it for game development? Anyone using it for Windows game development? I started a mailing list, ocamlgames. I proposed a few community projects that nobody bit on. After some initial sputterings about UNIX vs. Windows issues, it went dead. I have an intention to implement an OCaml Script Server for the Nebula Device 3D engine. But, it will depend on the PITA factor. I'm going to just screw around with the engine first, probably in Lua because that would be easiest. It's what that crowd seems to be into. Lua won't cut it for more abstract development though, and I'm not going to do things in C++. I thought maybe I'd bug people here... or else find out if there's some other better language that people tend to rally around. I've contemplated Bigloo, Chicken Scheme, MzScheme, and D. I'm mainly interested in performance for 3D and AI in games. I don't really care about scripting languages, I'm interested in natively compiled languages. I'm interested in good C FFIs, 32-bit floating point support, good Windows support.

Share this post


Link to post
Share on other sites
VanEvery0:

While I love OCaml and consider it a great language, I'm afraid to say AblazeSpace is right, there are much better languages than OCaml for making games. This comes from the fact that there are [only a] few game-oriented libraries for OCaml.

Of course, this is only the case if you intend to code the entire game in OCaml: you could always code the rendering, control and sound parts in another language, use OCaml for the game logic, and link everything together, no questions asked. Or even use it as a scripting language.

So the bottom word is: do it. OCaml was never designed for game development, and as such lacks any game-related support. But if you managed to prove good games with OCaml are possible (which they are), it would surely shove the language in the right path.

AblazeSpace:

It's too bad that you hate that language, but most people that study Caml after having studied another language (mostly imperative ones) first have the same reaction.

What I find quite sad about OCaml is that it is extremely elegant and concise, prevents many bugs that would appear in weak-typed languages, and still has the same library support as a dead paraplegic snail for anything beyond computer beeping or plotting pixels.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Quote:
Original post by ToohrVykmost people that study Caml after having studied another language (mostly imperative ones) first have the same reaction.

Most people that learn how to stand on hands after having learnt another way of standing (mostly standing on feet) first have the same reaction...
;)

Share this post


Link to post
Share on other sites
Quote:
Most people that learn how to stand on hands after having learnt another way of standing (mostly standing on feet) first have the same reaction...


Most people that learn how to stand on feet after having learnt another way of standing (mostly on their hands) first have the same reaction...
;)

[Edited by - Diodor on October 2, 2004 12:26:05 AM]

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
It sounds like you're going through a progression of languages that I went through a little while ago... good stuff.

Bigloo, Chicken, and Chez Scheme are all great. But they get pretty tedious to work in -- the FFIs get really annoying, because you need to work with lots unboxed variables. Maybe it's just me; I'm not as good at Scheme as I would like to be, so I think that contributed to the klunkiness.

D is pretty nice, especially if you're looking for something C++ish that's not Java. Actually, I guess D is a Java that doesn't suck.

But man, OCaml is damn nice. The FFI is fantastic. It's got a totally rockin' native code compiler that will beat gcc any day, but it's still got all the features of a language that supports the functional and/or OO paradigm. It's got a really good community, too.

Go with OCaml -- I'd be with you all the way.

-- John

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Quote:
Original post by AblazeSpace
I was forced to work with the functional version of caml at university... I HATE CAML! I see no reason to use it because there are other, much better languages...


Which are ?
Given your experience, I doubt you think about Clean or Haskell. But if you think about C++ or C#, then all I can say is, this can only come from a very inexperienced programmer.

Share this post


Link to post
Share on other sites

This topic is 4823 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Forum Statistics

    • Total Topics
      628730
    • Total Posts
      2984423
  • Similar Content

    • By INTwindwolf
      THE PROJECT

      INT is a 3D Sci-fi RPG with a strong emphasis on story, role playing, and innovative RPG features such as randomized companions. The focus is on the journey through a war-torn world with fast-paced combat against hordes of enemies. The player must accomplish quests like a traditional RPG, complete objectives, and meet lively crew members who will aid in the player's survival. Throughout the game you can side and complete missions through criminal cartels, and the two major combatants, the UCE and ACP, of the Interstellar Civil War.
      Please note that all of our current positions are remote work. You will not be required to travel.
      Talent Needed
       
      Unity Engine Programmer
      Website Administrator
      3D Animator
      We have made great strides in the year 2017! INT has received a comprehensive face-lift compared to the start of the year. We look forward to a productive, fruitful year 2018!
      Revenue-Share
      This is the perfect opportunity to get into the game development industry. Being an Indie team we do not have the creative restrictions often imposed by publishers or other third parties. We are extremely conscientious of our work and continuously uphold a high level of quality throughout our project.
      We are unable to offer wages or per-item payments at this time. However revenue-sharing from crowd-funding is offered to team members who contribute 15-20 hours per week to company projects, as well as maintain constant communication and adhere to deadlines. Currently the crowd-funding campaign is scheduled for the year 2018. Your understanding is dearly appreciated.
       
      Thank you for your time! We look forward to hearing from you!
       
      John Shen
      HR Lead
      Starboard Games LLC
    • By Apollo Cabrera
      Energy particles being harnessed by collection multi-hedron energy matrix. Whuuuttt?
      Love it :)
    • By AndySv
        Total Music Collection (http://u3d.as/Pxo)   THE COLLECTION CONTAINS:   Mega Game Music Collection   Universal Music Collection   Huge library of high quality music for any project! All at an incredibly low price!   - 2,5GB of high quality audio - 100+ different music tracks - Loop and short versions   Action, fantasy, casual, horror, puzzle, epic, dramatic, romantic, positive, inspiring, motivational and more!
    • By Dafu
      FES Retro Game Framework is now available on the Unity Asset Store for your kind consideration!
      FES was born when I set out to start a retro pixel game project. I was looking around for an engine to try next. I tried a number of things, from GameMaker, to Fantasy Consoles, to MonoGame and Godot and then ended up back at Unity. Unity is just unbeatable in it's cross-platform support, and ease of deployment, but it sure as heck gets in the way of proper retro pixel games!
      So I poured over the Unity pipeline and found the lowest levels I could tie into and bring up a new retro game engine inside of Unity, but with a completely different source-code-only, classic game-loop retro blitting and bleeping API. Months of polishing and tweaking later I ended up with FES.
      Some FES features:
      Pixel perfect rendering RGB and Indexed color mode, with palette swapping support Primitive shape rendering, lines, rectangles, ellipses, pixels Multi-layered tilemaps with TMX file support Offscreen rendering Text rendering, with text alignment, overflow settings, and custom pixel font support Clipping Sound and Music APIs Simplified Input handling Wide pixel support (think Atari 2600) Post processing and transition effects, such as scanlines, screen wipes, screen shake, fade, pixelate and more Deploy to all Unity supported platforms I've put in lots of hours into a very detail documentation, you can flip through it here to get an better glimpse at the features and general overview: http://www.pixeltrollgames.com/fes/docs/index.html
      FES is carefully designed and well optimized (see live stress test demo below). Internally it uses batching, it chunks tilemaps, is careful about memory allocations, and tries to be smart about any heavy operations.
      Please have a quick look at the screenshots and live demos below and let me know what you think! I'd love to hear some opinions, feedback and questions!
      I hope I've tickled your retro feels!



      More images at: https://imgur.com/a/LFMAc
      Live demo feature reel: https://simmer.io/@Dafu/fes
      Live blitting stress test: https://simmer.io/@Dafu/fes-drawstress
      Unity Asset Store: https://www.assetstore.unity3d.com/#!/content/102064

      View full story
    • By Dafu
      FES Retro Game Framework is now available on the Unity Asset Store for your kind consideration!
      FES was born when I set out to start a retro pixel game project. I was looking around for an engine to try next. I tried a number of things, from GameMaker, to Fantasy Consoles, to MonoGame and Godot and then ended up back at Unity. Unity is just unbeatable in it's cross-platform support, and ease of deployment, but it sure as heck gets in the way of proper retro pixel games!
      So I poured over the Unity pipeline and found the lowest levels I could tie into and bring up a new retro game engine inside of Unity, but with a completely different source-code-only, classic game-loop retro blitting and bleeping API. Months of polishing and tweaking later I ended up with FES.
      Some FES features:
      Pixel perfect rendering RGB and Indexed color mode, with palette swapping support Primitive shape rendering, lines, rectangles, ellipses, pixels Multi-layered tilemaps with TMX file support Offscreen rendering Text rendering, with text alignment, overflow settings, and custom pixel font support Clipping Sound and Music APIs Simplified Input handling Wide pixel support (think Atari 2600) Post processing and transition effects, such as scanlines, screen wipes, screen shake, fade, pixelate and more Deploy to all Unity supported platforms I've put in lots of hours into a very detail documentation, you can flip through it here to get an better glimpse at the features and general overview: http://www.pixeltrollgames.com/fes/docs/index.html
      FES is carefully designed and well optimized (see live stress test demo below). Internally it uses batching, it chunks tilemaps, is careful about memory allocations, and tries to be smart about any heavy operations.
      Please have a quick look at the screenshots and live demos below and let me know what you think! I'd love to hear some opinions, feedback and questions!
      I hope I've tickled your retro feels!



      More images at: https://imgur.com/a/LFMAc
      Live demo feature reel: https://simmer.io/@Dafu/fes
      Live blitting stress test: https://simmer.io/@Dafu/fes-drawstress
      Unity Asset Store: https://www.assetstore.unity3d.com/#!/content/102064
  • Popular Now