what's behind the The Sims programming?

Anything and everything that's related to OGRE or the wider graphics field that doesn't fit into the other forums.
Post Reply
User avatar
Stauricus
Kobold
Posts: 30
Joined: Sat May 04, 2013 10:26 pm
x 1

what's behind the The Sims programming?

Post by Stauricus »

hello everybody!

wait! i'm not trying to make a The Sims game.
wait again! i do know that probably we don't have any The Sims programmer here.
wait again again! no need for exact answers. just wanted to start a discussion about opinions and ideas for this subject:

how do you think the Sims game were made? i mean, there are lots of objects that can have their place changed. you can choose how to position it. and yet, the game is not that heavy.
is asking it because i've been wandering in some 3d engines, and got hit by the famous draw-calls bottleneck. so, i believe that the The Sims games are not full of individual objects, right?

so, that's why i'm here making this immagination exercise: how do you think it's done? batches? texture atlases? what else?
thanks! :)
AgentC
Kobold
Posts: 33
Joined: Tue Apr 24, 2012 11:24 am
x 5

Re: what's behind the The Sims programming?

Post by AgentC »

I wouldn't be surprised if it combines the same kinds of objects into batches when you stop moving stuff. For example if you build a long wall out of several wall pieces, they would be merged. It may also be using hardware instancing, but that's often beneficial only for very small vertex counts per object instance.

That said, draw calls aren't equal in engines, the more there is CPU operations (or memory access issues like cache misses) per draw call, or if there's poor usage of the rendering API (like repeated calls to set the same state over and over, or poor sorting of calls resulting in more state changes than would be necessary) the less draw calls you'll get per the same amount of time. For example Ogre is notoriously poor in its draw call throughput, figures like 3x less draw calls compared to typical engines was mentioned by dark_sylinc who is now improving it for 2.0 :)
User avatar
Stauricus
Kobold
Posts: 30
Joined: Sat May 04, 2013 10:26 pm
x 1

Re: what's behind the The Sims programming?

Post by Stauricus »

yeah, i guess some kind of batching must be done...
what surprises me, as example, is that different wall paintings would probably be different materials. maybe it create texture atlases on the run? :P
phobossion
Halfling
Posts: 45
Joined: Wed Jul 24, 2013 9:50 am
x 3

Re: what's behind the The Sims programming?

Post by phobossion »

Stauricus wrote:what surprises me, as example, is that different wall paintings would probably be different materials. maybe it create texture atlases on the run? :P
Actually you can easily write a shader that will take the painting color as parameter and apply it dynamically, no need to create one texture per painting color. It's the same process as with RPG equip dyes in many popular games.
Post Reply