Jump to content

Help a newbie pick an engine


Recommended Posts

Hi,


So in my quest to find an open source 3d game engine for my project i've finally decided that i need to choose between either Torque3d or Urho3d. Both seem quite capable and torque has great tools and a lot of shipped titles which is a huge plus IMO for any engine as it shows it isn't just some fancy toy. Urho does not have any shipped titles that i'm aware of and the tools are either lacking or just not very good. However, urho is pretty straightforward to program as it follows the entity-component paradigm and since i have a programmer background it feels even better because urho is very programmer-centric. Torque has torquescript, which is fine but i still don't get the whole client/server thing everywhere. For a game that is supposed to be single-player only, it's quite confusing what needs to be server-side and what needs to be client-side.


So for people who are much more familiar with the engine, how difficult is it to make a game with torque that is NOT a multiplayer first person shooter? I ask this because looking at torque, i like almost everything about it except for the way it's supposed to be scripted/programmed. Programming is a significant portion of every game but it seems kind of foolish to make a decision based on that alone since there are a lot of other important parts to making a game as well. The game i have in mind is first person with little to no shooting and mostly taking place in one persistent but small level/world. I'll be the only person working on this project but i might involve other people in later stages for better models/music etc. I've made small games/demos before in other engines and dabbled with opengl a bit as well but never shipped a commercial title which is why i still have a lot of holes in my knowledge. :P


Would you suggest sticking with torque and learning more about it and it's internals until it all "clicks" or would urho be a better option since it seems easier to get started with?


Thanks

Link to post
Share on other sites

Hi @throw_away


I'm not released any game yet but as you say Torque3D and the old "Torque" having a bunch of game releases with different genres types, Tower Defense, RPG, MMO, FPS, RTS, MMORPG, MOBA, educational games, even religion games... multiplayer, singleplayer, 2D, 2.5D and 3D... and have some books published. Torque3D or old Torque books


Don't worry about torquescript, at first I did, but is not difficult at all, is a scripting language...

 

i still don't get the whole client/server thing everywhere....For a game that is supposed to be single-player only, it's quite confusing what needs to be server-side and what needs to be client-side

 

ok I understand how you feel, but again don't worry about this unless you have future plans to add multiplayer. At your first singleplayer game do the scripting as you wish and learn from this. (Torque 3D will manage with the local network side for you)


A lot of people said what of the strongest part of the engine is the network, for that reason a lot of released games are multiplayer, like MMORPG with persistent world. I know a FPS MMORPG games (http://lifeisfeudal.com/) and a Car style MMORPG (http://www.dark-wind.com/) but it should not necessarily be like this, see this games http://tiltedmill.com/hinterland/ and http://www.dimensionu.com/dimu/home/Games_Dimu.aspx and http://www.towerwarsgame.com/ and http://www.deadstate.doublebearproductions.com/media/ see this link: Games Made With Torque 3D

 

how difficult is it to make a game with torque that is NOT a multiplayer first person shooter?

 

For a sigleplayer only... very easy.

That is NOT a FPS.... What kind of game what you want? You need to know TorqueScript.... The dificulty is about you programing experience, how quickly you can learn, etc, etc... This is true for anything. So if you know how to change thing will be easy.


Of course here the game engine can help you, if the game engine is like sprints RTS well maybe you can do a RPG but you need to change some parts of the engine or maybe the whole thing... The point is... the old Torque was development with FPS multiplayer in mind, thougth the year was evolved one way or another. So a lot of stuff are focused FPS multiplayer. But again a lot of people published a lot of diferrent games.

 

Would you suggest sticking with torque and learning more about it and it's internals until it all "clicks" or would urho be a better option since it seems easier to get started with?

 

Torque3D have a good roadmap ahead and is very active, almost daily are receiving updates, upgrades or fixes. (Some are on unofficial repos to then move to the official torque3d repo)


So in anything we can help, let us know.


Cheers

John

Edited by Johxz
Link to post
Share on other sites
@Johxz Thank you for the detailed response. The roadmap does indeed look promising with entity-component system and pbr in the works!

 

Indeed man... Either way.... Torque3D or the old Torque have proof that you can do different types games and finish it, and that list I shared to you is incomplete, I have to update it :oops:


I give you a categorized list of game.


Games:


- Open world action game: http://www.moddb.com/games/deadlymatter (Is in development, I think is like Far Cry, I not sure)

- Turn-based/Rol: http://irontowerstudio.com/age-of-decadence-news

- Card Game: http://www.garagegames.com/products/bellatorus

- Sport combat car game: http://www.metaldrift.com/

- Strategy game: http://kingmania.300ad.com

- Melee Duel Arena: http://www.mode7games.com/content/game.html

- real-time strategy/action hybrid: http://www.martianarctic.com/games/cyberwing/ (Is a MOBA or ARTS)

- RPG: http://store.steampowered.com/app/314120/

- Narrative/Religious: http://interactiveparables.com/ (about the bible)

- History: http://tiltedmill.com/mosbys_confederacy/

- A Torque3D Modification for RPG games: http://store.steampowered.com/app/329890/

- A Car game and Torque3D Modification: http://store.steampowered.com/app/284160/

- turn-based tactical sport game: http://store.steampowered.com/app/237350/

- Interactive and educational virtual reef: http://joticarroll.github.io/Torque3D/

- Sandbox game: http://store.steampowered.com/app/250340/

- MMO/VR/Exploration/Crafing game: http://steamcommunity.com/sharedfiles/filedetails/?id=446054581 (Is in development, I don't know whats going on with this game :lol: )


Some games use Torque3D before MIT other games after MIT ;) I hope it helped you decide man.


If someone tell to you that you can't do it in Torque3D they are very wrong :lol: :lol:


?u=http%3A%2F%2Fwww.segnorasque.com%2Fwp-content%2Fuploads%2F2016%2F08%2FzgWFptmpEKSl.jpg&f=1

Link to post
Share on other sites

Hi,

I’ve spend some time testing both engines, so maybe this post will help You a bit. I won’t write long comparison, since after reading Your post I guess that You are aware of main pros and cons of both engines.

Basically both engines are different and designed to be used in different ways, I guess You will have to choose what fits You better. Urho gives You better flexibilty – You can use it as an external library and that will give You control of application from begging to the end, but will also require to write a lot of stuff from scratch. On the other hand in Torque You build upon existing template – a lot of stuff is already handled but You have to use it in right way. Let’s take level loading for example: In Torque You call one function (loadMission(%misfile) if I recall correctly) and lot of stuff is already implemented – You will see splash screen with loading status and after that You game will be set up. Additionaly You can add some logic in script (for example in function loadMissionStage2()). If You want the same result in Urho You will have to write everything from beggining – set splash screen, load file with mission, add it to scene tree, set input, set camera, set viewport, set player, run initialization logic. The same goes for other things – in Torque you have whole game framework build from core scripts (You can of course modify them), in Urho You’ll have to write this framework. Some people may prefer first approach, other may prefer latter. You want to use other view then first person? Torque has several build-in camera modes You can use them, but there may be need to rewrite some parts, becouse You want it to work a bit different – in Urho You’ll have to write it from scratch so it I will work how You want it to work from the very beggining. Player, vehicle, weapon, item? Every case is the same.

Also note that upcoming changes in version 4.0 (entity-component system, new base template) will propably improve flexibility in Torque.

Other users may throw stones now ;) but when I had Your dilemma, I've decided to go with with Urho... personally I prefer flexibility (but I don't mind Torque's approach) but the main reason was performance - in this field Urho is just much better, I'm using not so new computer and in my project I don't need Torque's great environment tools. Of course I'm still keeping my eye on this engine, because I really like it.

Link to post
Share on other sites

@Johxz Thanks, you've convinced me to spend more time with torque and experiment some more. Let's see where that gets me! :D


@L3zak You're completely correct about both engines and I too prefer flexibility and doing things my own weird way(I prefer emacs over an ide and only use the ide to compile :lol: ). However, since i'm going to be working alone for most of this project i wouldn't mind some handholding. In an ideal scenario i'd start from scratch using only opengl and the platform's own libraries and build my own lean and mean game that does exactly what the game requires and no more(Low level programming can be so much fun!). But after starting several projects in a lot of different frameworks/libraries/engines and abandoning them later, i now want to finish something. There are things finishing something can teach that can't be learnt even if I start a thousand new projects and never finish them. One weird thing though, i got better performance running torque on linux with basic lighting than urho even with shadows low of off. Maybe i was doing something strange :roll:


Anyways, thanks for the help everyone. Now comes the part where i have to read a billion docs, samples and source code :geek: . I hope to have something to show and post at the forums soon!

Link to post
Share on other sites

If you want an open source game engine, there is no real alternative to Torque3D, for small games like 2D games or mobile style games there is a bunch of alternatives now, but for large scale 3D projects they cannot compete yet.

So it depends on your project, if it is a small game Godot or Urho3D may work better, since you get results faster, but in the long run you will be missing features that Torque3D provides by default.

Link to post
Share on other sites

@Duion Yeah you're right. Godot seems pretty good for 2D and the tools seem nice as well but their 3D is still a work in progress. Urho seems well designed but so far no shipped titles and a lack of good tools. It seems like a good starting point for building an engine on top of though. There are a lot of other choices as well but most are either unmaintained or just toys that their author lost interest in. Idtech 4 is interesting but if you haven't fiddled with id engines in the past then it has a significant upfront cost of getting to know the code-base and tools etc since there are almost no tutorials/documentation available and you basically have to look at doom 3's assets/code and reverse engineer everything. All that leaves Torque3d as the only real option for me, it has a mature toolset, a number of finished games to it's name which proves it's the real deal and a small but helpful community.


There are a lot of "engine X vs Y" threads on the interwebs meaning a lot of beginners seem to have analysis paralysis. Maybe this will help someone else in the future as well!

I'll be sticking with torque for now though :D

Link to post
Share on other sites

If you're sticking with Torque, remember that we have a small but helpful Wiki as well:

http://wiki.torque3d.org/


It's not that widely used, but there are some useful information in there. Especially for getting started.


I wrote this beginners guide which has received a lot of positive comments:

http://wiki.torque3d.org/scripter:coincollection


Furthermore, you seem like me, the kind of guy who hates when there is too much stuff in your project, and you are not completely sure what does what (I can't stand auto-generated code and templates :P )

If so, take a look at this repository:

https://github.com/crabmusket/t3d-bones/tree/master/tutorials

Which has a lot of very useful tutorials for starting from scratch.

Link to post
Share on other sites

@LukasPJ Yeah as a matter of fact, i do hate auto-generated code and a lot of stuff that i don't understand in my project tree :lol: I've looked at all these resources and others before(i've had my eye on torque ever since it went opensource :P ) and t3d-bones framework has indeed proved very valuable! Thanks

Link to post
Share on other sites

In less than 18 days I was able to summit a (very) small 3rd person single player beat em' up game for a game jam.

The engine is quite versatile and flexible once you're used to it.

But I only had experience doing games with RPGMaker before. I don't have enough knowledge of other engines to compare them.


The server/client stuff is not easy when heavily modifying the C++ code but once I kind of understood the pack/unpack thing it became doable.

As for scripting for single player I think there are good enough tutorials for the few parts where it's needed (change camera, mainly). I ignore the duality in the rest of scripts and they work fine.

Link to post
Share on other sites

There's definitely some good responses here, but I figure I'll toss a hat into the pile as well. More info for consideration is always good!


Networking:

While it's true that T3D handles everything as networking, most of that is kinda obscured away from you while scripting, normally. In base terms, if you're writing gameplay, you'll be doing scripts in the server side, if you're doing inputs/gui, you'll be doing scripts on the client side. Then you just have some commandToServer/Clients sprinkled in to bridge between them as needed.


But outside of that, you don't often need to fret on where's what in relation to server/client unless you're getting into some fancier behavior. Doubly so if you're only doing a single player game.


Template

The existing templates do a decent job of getting you set up with a basic framework for gameplay, the networking and some starting content, but the path the scripts take are intermingled and kinda confusing. It's been mentioned, but I've got a draft for a new template based on that t3d-bones one that's more fleshed out and utilizes the modules system. Some changes are coming to it to further refine it for it's integration for 4.0, but if you wanted to have a poke at it, it's here: https://github.com/Areloch/Torque3D/tree/BaseGameTemplate


Entity/Components

There's an experimental implementation in T3D already as of 3.9, and as covered in the roadmap, it'll be the primary system for 4.0. I really do like the e/c method because it cuts back on duplication of code and keeps things broken down and managable, as well as letting you build out custom objects without being obligated to jump into the source code.


I'd suggest giving a skim of my work blog, as I do a fair bit of talking about that kind of stff, as well as PBR and other WIP stuff we're doing with the engine for 4.0, here:http://forums.torque3d.org/viewtopic.php?f=8&t=159


If there's anything else you're curious on, or would like some more in-depth breakdowns on, by all means, ask. We've got some rather knowledgable people here, and we're totally keen to answering questions :)

Link to post
Share on other sites
That's great! Although I'm pretty sure soon some heathen will chime in and say "oh but i use vim!!!" :D

 

naah I don't think so, vim* is death :lol: maybe someone from Atom :mrgreen:


BTW I'm updating the wiki to add the TorqueScript support in Atom.



* To vim fans: This is a joke

Link to post
Share on other sites
"War.....war never changes..." :lol:

The funny thing is that the video on Atom's website reminds me of the computer consoles in Fallout 3 and New Vegas. Especially after "grandma" in the video changes the text so that it's all green. The same green as the text on the computers in Fallout. The Fallout computers were monochrome and didn't have a joystick, but these "Atom 1.0"s are "The text editor of the future" computers after all. :lol:

Link to post
Share on other sites

I would not argue too much about whether engine x or y is better, but rather look if there is finished projects made with it, since there is a big difference in producing demos/showcases projects and actual final products.


For example the showoff of tesseract impressed me a lot some time ago


Pure graphics rendering is nicer than in T3D and it also has Global Illumination, performance is also great, so I tested it out, the engine was pretty simple in its structure, but in the long run it had so many features missing that T3D had already that I gave up pretty quickly.

Link to post
Share on other sites
I would not argue too much about whether engine x or y is better, but rather look if there is finished projects made with it, since there is a big difference in producing demos/showcases projects and actual final products.


For example the showoff of tesseract impressed me a lot some time ago


Pure graphics rendering is nicer than in T3D and it also has Global Illumination, performance is also great, so I tested it out, the engine was pretty simple in its structure, but in the long run it had so many features missing that T3D had already that I gave up pretty quickly.

 


I agree.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...