What's a decent 3D devkit?

Discussion in 'Fangaming Discussion' started by stormislandgal, Mar 1, 2012.

  1. stormislandgal

    stormislandgal

    It's not a phase! Tech Member
    4,533
    10
    18
    Married life <3
    I recently got a weird idea in my head over the past few nights, and I want to work on it here and there while I do more important things in my life. However, one of the key ingredients is that this just can't work in a 2D environment. Game Maker has 3D capabilities, but nowhere near powerful enough for my needs. And honestly, I think it's time to graduate from kindergarten and look into something respectable.

    Preferably, I'd be looking for something that's open source and free. Or at the very least, free to use. I'll worry about paying for a license if I ever actually get this thing off the ground and decide to monetize it. I keep hearing things about Unreal, Unity, Source, etc. Looking at them is making my head explode at the moment, so I was wondering if anyone who has experience with this kind of stuff would be willing to give a few pointers. *pokes Gen*

    Coding my own 3D engine from scratch would be ideal, but I really doubt I'd have the skills for that. That's why I'd be looking to base it off of something that's relatively easy to build off of.

    If any details are needed as to what exactly I want to accomplish, full 3D movement (for example, Super Sonic/Super Silver in SA2's final boss) is key. If an engine is hardcoded with gravity towards a certain direction that would be a bitch to remove, I don't think I'd be interested.

    If this belongs in Tech Discussion since it's not 100% about Sonic, fair enough, move it.

    edit: I just realised my example is terrible. Basically it'd be kind of like a flight simulator, though not as complex. I'd be able to roll, pitch, yaw and move upside down in any angle I wanted at any angle. That's a bit more descriptive.
     
  2. Candescence

    Candescence

    Member
    1,985
    2
    18
    Sydney, Australia
    3D Indie Stuff
    I wouldn't use 'devkit' if I were you, even if it's a technically correct term in this instance. 'SDK' (software development kit) is a better term to use, since it differentiates itself automatically from console hardware devkits.

    Now, I won't pretend to be an expert on these things, but here's what I think from my prior experience and knowledge:

    • UDK: Earns points automatically for having the Sonic GDK, which you can modify to your own ends. It's a good kit to use, though it's certainly not perfect, with some ease of use issues, for starters. And I consider Kismet a piece of garbage, though that's mainly because I loathe flowchart-based visual scripting with a passion.
    • Unity: While it only has the Egg Engine going for it so far as far as Sonic stuff goes, Unity has one thing I like about it more than UDK - it allows you to script stuff within the actual editor, whereas UDK forces you to do that outside of it, and then compile the bloody thing. Unity's way of handling scripts makes things much easier and quicker to test, especially with the ease of being able to test immediately within the editor window. However, Unity is beginning to show its age graphics-wise compared to UDK (granted, UE3 isn't without its own graphical flaws), despite some improvements over various releases.
    • CryEngine 3: Relatively new to the "free SDK" scene, but showing a ton of promise, though it is still somewhat unstable, from my knowledge. While it's not quite as user-friendly with scripts as Unity, it uses Lua as a scripting language, which has been pretty much established as one of the best scripting languages in existence. Obviously, CE3's graphics are absolutely fantastic (the forest demo that comes with it is absolutely amazing). If you can get around its stability issues and learn LUA, I imagine it's quite possible that one could make something absolutely fantastic.
    • Source: I'm surprised you mentioned this one, since this one is usually completely ignored in favor of the above three. Source is proven and reliable, though it has been criticized for ease of use issues and requiring C++ to use (though modders also like to get around this with Lua, like with Garry's Mod). That being said, if you're not picky about graphics quality, this might be a viable choice.
    • Other engines: There's quite a few open-source 3D engines, such as Irrlicht (dunno if I spelt that right) and Crystal Space 3D. I wouldn't worry about the 'hard-coded' movement thing, unless an engine is meant for a specific genre, game SDKs never do that, period. Once again, if you're not picky about visual quality, you might want to give some of these a try.

    The choices are varied, and they have different features and such. Depends on what you want to make and your preference.
     
  3. Sik

    Sik

    Sik is pronounced as "seek", not as "sick". Tech Member
    6,719
    0
    0
    being an asshole =P
    It's the first time I see anybody complain about this. As far as I know, devkit is universally understood as development kit regardless of platform or whatever. It's still probably the wrong term though. In this case she's looking for a game engine.
     
  4. Candescence

    Candescence

    Member
    1,985
    2
    18
    Sydney, Australia
    3D Indie Stuff
    Well, SDK, game engine, devkit, they all are technically correct terms in this case, I think.
     
  5. Dude

    Dude

    Tech Member
    3,138
    0
    16
    Southbridge, MA
    Random VR/AR trash
    I've been thinking about this myself... so far the best option is looking like either Source or a heavy mod of the Quake engine, since those are technologies I'm familiar with. But the main problem is that those are set up more for indoor environments, and since my game is going to be a 6DoF mine crawler half of the time and a flight sim the other half of the time, I don't know how I'm going to get outdoor environments to work better.
     
  6. Gen

    Gen

    This is halloween! This is halloween! Member
    309
    0
    0
    The Mobius Engine
    If you're starting out, and want something that doesn't make compromises for the overall programming environment, I'd definitely say go with Unity.

    Unity is great, primarily because you can do just about anything with it programming-wise (within the limits of C# 3.5 at least, sans pointers unless you build your assemblies outside of Unity). The environment pretty much gets out of your way to do whatever you want to do with it.

    EDIT: Also forgot to mention, it's native code workflow is pretty cool too. You can call methods from pretty much any dynamic library like you would in any other .NET program.
     
  7. Cyberblade

    Cyberblade

    Can't catch me ya bastard! Member
    146
    0
    0
    Ohio
    Sonic Shift
    I'm sort of biased because its what I'm making Sonic Shift in, but Blender works rather well if you're looking for something thats not as complex as diving into Unity or other bigger SDK's. You can create a basic enough game with just logic bricks very similarly to GM, but its highly expandable with Python code. Blender has a basic physics engine in place but I've found it rather easy to abuse so your gravity issues shouldn't be too big a deal. I mostly chose it for its simplicity and ease of multi-platform use. However Blender does lack most of the cool features and tools of more sophisticated SDK's, and is a little slower than them in real time rendering at that.

    I chose it for its simplicity, my experience, and the ease of multiplatform support, but I did eye several other SDK's such as Irrlicht and Unreal before I chose Blender. Both more capable, but not as simple as I wanted for a project for me to work on off to the side of school/life. Just do a lot of research based on what you want out of your SDK, look over example codes from each, and then roll the dice. There's not too much else you can do.
     
  8. Covarr

    Covarr

    Sentient Cash Register Member
    4,233
    3
    18
    Trapped in my own thoughts.
    Two stageplays, a screenplay, and an album
    The only one of these I've any actual experience with is Source, and I can say that while I adore the engine for its ability to look pretty good with minimal requirements (just look at Portal 2), it's pretty near unusable if you're hoping to do anything open-world. Load times are a bitch, levels need compiled separately... It's a nice engine for shooters, and probably even for the odd platformer, but I wouldn't really consider it for much else. For a flight sim, it could probably work, as long as the world is small enough. Unless you really want to divide it into multiple maps, with Half-Life style load screens at specific points :P
     
  9. SANiK

    SANiK

    Tech Member
    412
    0
    16
    I *might* need a place to crash near upstate NY if I decide to chase after electronic circuit design jobs in that area.

    I've written 3D engines from scratch before. So I wouldn't mind helping you out if you need a roomie.
    Plus I wouldn't mind starting a small game development company on the side either.

    Though the chance of me finding a job, you being able to accommodate having a roomie, and your location in NY being close to the jobs to begin with, is up in the air.

    If you're interested, how far away are you from Rochester, New York?
     
  10. stormislandgal

    stormislandgal

    It's not a phase! Tech Member
    4,533
    10
    18
    Married life <3
    I've decided to give Unity a whirl first. From what I've seen so far (admittedly not much), it might be perfect for what I need, but I imagine bumps in the road will show up soon.

    Not interested, sorry. Especially since I still live with my parents and I had to go through hoops of fire to get them to let someone else move in.
     
  11. SANiK

    SANiK

    Tech Member
    412
    0
    16
    Understandable. If the job goes through, I'll probably try shared apartments on craigslist. Best of luck to you though.
    Though I still would have loved to help out game programming, but currently I'm tied up with another assignment.