Jump to content

Welcome to Obsidian Forum Community
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!
Photo

Why Unity 3D?

unitygame engine design programming tech

  • Please log in to reply
17 replies to this topic

#1
ion.sh

ion.sh

    (1) Prestidigitator

  • Members
  • 17 posts
  • Location:NYC
I think the project eternity will be using the Unity framework as its basis.

Just a little curious, why Unity? Does anyone have a link to an article or an interview where the devs specifically discussed the reasoning behind their decision?

I'm always interested in new game development technologies, and it would be interesting to hear what kind of reasoning went into deciding on Unity for project eternity.

Edited by ion.sh, 15 October 2012 - 06:04 AM.


#2
Tale

Tale

    Forum Moderator

  • Moderators
  • 10995 posts
  • Location:Home is where the heart is, mine is in my chest.
  • Steam:Tale
  • PSN Portable ID:Taleroth
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer
What I've gathered is that it has cross-platform support (Mac, Windows, Linux) and is a sort of all-in-one solution without needing extra middleware. But there's probably a few other reasons, too.
  • anek and runaum like this

#3
ion.sh

ion.sh

    (1) Prestidigitator

  • Members
  • 17 posts
  • Location:NYC

What I've gathered is that it has cross-platform support (Mac, Windows, Linux) and is a sort of all-in-one solution without needing extra middleware. But there's probably a few other reasons, too.


Yeah, I guess devs could do an interview addressing design concerns that went into the decision sometime. Let people pick their brains :)

#4
Lysen

Lysen

    (4) Theurgist

  • Members
  • 348 posts
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer
Unity is cheaper than Onyx (Obsidian's own engine). As to why Unity specifically, I think they said that it is easy to work with. Also, Wasteland 2 uses Unity.

Unity enables small teams to be very productive. Unity has an amazing development environment that makes it very easy for programmers, artists and designers to work together to build great games. In a very short time we have already made great progress prototyping some of the core functionality for Project Eternity.

We do intend to use some of our in-house tools in conjunction with Unity where it makes sense, such as in the case of creating conversations and editing some of the RPG-specific game data. Unity makes it very easy to extend not only the game engine but the development tools as well, and we feel integrating some of the tools that have already proven effective on previous Obsidian games will get us off to a great start on the development of Project Eternity.


http://www.kickstart...ty/posts/313192

Buck: Was the vast cross-platform support of Unity the main reason why you chose to develop the game with it instead of Onyx? Do you anticipate using the Onyx engine for any future games beyond South Park?

Josh: Cross-platform support was important as was its general flexibility. We were able to prototype a lot of ideas very quickly, which is fantastic. I don't know what the future of Onyx is like, but we're still using some of our internal Onyx tools on Project Eternity. Our tools programmers have hooked up our string and conversation editors to work with Unity, which is enormously valuable for us


http://www.gamebansh...iew/page-3.html

Edited by Lysen, 15 October 2012 - 08:29 AM.

  • ion.sh and syn2083 like this

#5
Luridis

Luridis

    Nightfall of the Obsidian Order

  • Members
  • 551 posts
  • Location:Dallas, TX
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer
These are the reasons I personally think that they chose Unity3D. So, these reasons may or may not be Obsidian's reasons and you should take this post with a grain of salt.

Technical Reasons
  • Stable & capable graphics and game engine. (Audio, HID, Physics, Asset Pipeline, Navmesh / Pathfinding, AI plugins, etc.)
  • Cross-platform for the 3 major PC operating systems.
  • Graphics engine renders well in both the OpenGL and DirectX APIs.
  • Team oriented version control server.
  • Finished Unity3D products successfully deployed through Steam.
  • Custom shader support.
  • Platform specific script compilation to native code.
  • 3 Scripting languages, all of which I believe can be used at developer preference do to the native code compilation.
Business Reasons
  • Simple and straight forward licensing model: $1500 per developer seat.
  • No third-party license agreements beyond a click-wrap.
  • No publishing fees or royalties that would create sale revenue deductions.
  • No annual or maintenance fees that would create ongoing overhead costs.
Other available engines offer as many or better features regarding the game engine itself. It's the business reasons that make Unity3D very studio, indy publisher, and Kickstarter friendly. Engine licenses can eat up a ton of revenue that would otherwise be rolled into expansions and other projects. Maintenance fees take operating money away from more valuable things like employees and their health plans.

You can relax, Unity3D is good stuff. Endless Space was written on Unity3D and it's a fantastic game if you like the 4X space genre in the spirit of Master of Orion 2.

Edited by Luridis, 16 October 2012 - 10:05 PM.

  • Karranthain, Frisk and syn2083 like this

#6
Carmelle

Carmelle

    (1) Prestidigitator

  • Members
  • 35 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer
^ Good list. I'd probably just add that there's also a built in "market place" of sorts, for additional plugins, addons, assets, libraries, etc... for the engine/game. Ex: it might be cheaper or easier to buy one of the available pathing packages than code one from scratch. I'm sure their team can do whatever is needed, but sometimes its easier, faster and just as good to use the market.

#7
jaschmid

jaschmid

    (0) Nub

  • Members
  • 2 posts
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer
  • Deadfire Silver Backer
  • Fig Backer
I've done professional work with Unity 3D before and in my opinion the engine is a great fit for Project Eternity.

The only significant con of Unity 3D is that it's not particularly resource efficient compared to highly engineered triple A engines. But for a Project Eternity this is a non-issue, Project Eternity has (in principle) graphics that systems 10 years ago could utilize, furthermore it's target platform is only PC, so it doesn't have to contend itself with extremely resource constrained consoles.

The pro's are that Unity 3D is cheap*, has a large body of experienced talent, comes with fully features and easy to use tools that allow designers to very quickly mock up any ideas they want to try out. Of all the game engine's that cater towards the non AAA game development market Unity 3D is by far the most established with (by now) the fewest kinks.


*assuming they don't need to acquire a source code license
  • Ieo, Luridis and syn2083 like this

#8
Feynt

Feynt

    (1) Prestidigitator

  • Members
  • 16 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer

I've done professional work with Unity 3D before and in my opinion the engine is a great fit for Project Eternity.

The only significant con of Unity 3D is that it's not particularly resource efficient compared to highly engineered triple A engines. But for a Project Eternity this is a non-issue, Project Eternity has (in principle) graphics that systems 10 years ago could utilize, furthermore it's target platform is only PC, so it doesn't have to contend itself with extremely resource constrained consoles.

The pro's are that Unity 3D is cheap*, has a large body of experienced talent, comes with fully features and easy to use tools that allow designers to very quickly mock up any ideas they want to try out. Of all the game engine's that cater towards the non AAA game development market Unity 3D is by far the most established with (by now) the fewest kinks.


*assuming they don't need to acquire a source code license


Well, it's cheap in regards to their current holdings for a license. It would end up being around $2k for cross platform PC support. If they get ambitious, another $3k lets them try porting it to iOS and Android (which would be a neat idea, PE on a tablet would go over well for me). The major reasons for choosing Unity have been covered, but to elabourate a little on the scripting; the engine supports C#, Javascript, and Boo (a variant of Python for Mono). I suppose technically you might be able to work any language you compile into Mono bytecode into the engine, but officially it supports those three. What's more, you can call use different languages between scripts and still maintain interoperability. So three programmers on a project: One loves python, one loves C#, one loves javascript. As long as none of them work on the same scripts, they're free to work as they please and rely on the other's scripts as long as they know what the functions are and how to call them. A Boo script can call a C# or javascript function and any other combination. It's a bigger deal than you'd think.

Plus easy integration of assets, Unity 3.5 even exports .blend files from Blender properly, as well as (of course) Maya and 3DS Max files. This means for the indie developer just starting out, for a grand total of nothing, you can get a game engine, high end modeling software, and a competent texture program (GIMP, lets say) to get started in the gaming industry. But, if you're a big name company with scores of employees and the latest in asset creation software, you're still covered.
  • syn2083 likes this

#9
Setlec

Setlec

    (1) Prestidigitator

  • Members
  • 5 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer
cheap and good engine, using UE 3 or Cryengine aren't necessary, + royalties aren't cheap for those two enigines. Though Unigine might have been good for this project.

#10
Nightshape

Nightshape

    (12) Mage

  • Members
  • 1851 posts
  • Location:Warsaw, Poland
Unity is a good engine for relatively small teams. It doesn't scale very well for larger teams, but this kind of product doesn't require a bleeding edge 3d engine, it requires a robust functional engine which can hit the desired platforms.

It's a very good choice for Obsidian.

#11
Solviulnir the Soulbinder

Solviulnir the Soulbinder

    (2) Evoker

  • Members
  • 90 posts
  • Location:Poland
There's really no point in arguing why Obsidian picked this engine and not the other. It's not like they're nooblet developers who decide on choosing their tools by a way of lottery. They are pros and i'm quite sure they put a lot of effort to select development environment that will suit their needs and deliver results that we will all be satisfied with. Besides, I heard somewhere that a true artist can make a masterpiece by painting with his finger dipped in ink. I'm sure that Obsidian, should they make such decision, could as well build PE with Quake 2 engine and it would still blast our asses off...

As long as it ends up as a good and enjoyable game, who cares whether it's running on Source, Infinity or Unity?
  • AgentOrange likes this

#12
Luridis

Luridis

    Nightfall of the Obsidian Order

  • Members
  • 551 posts
  • Location:Dallas, TX
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer

There's really no point in arguing why Obsidian picked this engine and not the other. It's not like they're nooblet developers who decide on choosing their tools by a way of lottery. They are pros and i'm quite sure they put a lot of effort to select development environment that will suit their needs and deliver results that we will all be satisfied with. Besides, I heard somewhere that a true artist can make a masterpiece by painting with his finger dipped in ink. I'm sure that Obsidian, should they make such decision, could as well build PE with Quake 2 engine and it would still blast our asses off...

As long as it ends up as a good and enjoyable game, who cares whether it's running on Source, Infinity or Unity?


I think the OP meant this more as a discussion of his own curiosity as opposed to arguing for or against what they chose to use.
  • twincast and crackwise like this

#13
Maf

Maf

    Fragment of the Obsidian Order

  • Members
  • 122 posts
  • Location:Behind a screen
  • Pillars of Eternity Gold Backer
  • Deadfire Silver Backer
  • Fig Backer
  • Black Isle Bastard!

the engine supports C#, Javascript, and Boo. I suppose technically you might be able to work any language you compile into Mono bytecode into the engine, but officially it supports those three. What's more, you can call use different languages between scripts and still maintain interoperability. So three programmers on a project: One loves python, one loves C#, one loves javascript. As long as none of them work on the same scripts, they're free to work as they please and rely on the other's scripts as long as they know what the functions are and how to call them. A Boo script can call a C# or javascript function and any other combination. It's a bigger deal than you'd think.

Unity supports Boo?
Well that settles it then.
Spoiler

Edited by Maf, 25 October 2012 - 12:38 AM.

  • Huinehtar, twincast, LordCrash and 4 others like this

#14
Solviulnir the Soulbinder

Solviulnir the Soulbinder

    (2) Evoker

  • Members
  • 90 posts
  • Location:Poland
@ Luridis - yes, I think you're right. Sorry for the rant.
  • crackwise likes this

#15
teknoman2

teknoman2

    (9) Sorcerer

  • Members
  • 1368 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer
  • Deadfire Backer
  • Fig Backer

What I've gathered is that it has cross-platform support (Mac, Windows, Linux) and is a sort of all-in-one solution without needing extra middleware. But there's probably a few other reasons, too.

also it is highly efficient in making both 3D and 2D graphics, so they dont need anything extra for making the landscapes

#16
Feynt

Feynt

    (1) Prestidigitator

  • Members
  • 16 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer

Unity supports Boo?
Well that settles it then.

Spoiler


I lol'd. Wrong Boo, sadly, as I mentioned.

However, support Boo for president?

#17
evilmiera

evilmiera

    (2) Evoker

  • Members
  • 53 posts
  • Pillars of Eternity Silver Backer
  • Lords of the Eastern Reach Backer
  • Deadfire Silver Backer
  • Fig Backer

Old topic, but it seems to fit the question I had in mind: Recently, the kickstarted game Conquistador's creator said that the patch he was making for the game was running into some issues patching the gamefiles directly, requiring a complete reinstall with the newly patched files. This apparently wasn't an issue on Steam for some reason. Is this just a case of the guy not knowing how to handle the engine or is this a real, serious limitation for games made with the engine?



#18
Labadal

Labadal

    Janitor of the Obsidian Order

  • Members
  • 3968 posts
  • Location:Sweden
  • Pillars of Eternity Gold Backer
  • Kickstarter Backer
  • Deadfire Backer
  • Fig Backer

Because:

PE-TempleEntrance01-2560x1440.jpg


  • Lephys likes this





Also tagged with one or more of these keywords: unitygame engine, design, programming, tech

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users