Ant Sized Scene

I have started game where the character is about the size of a ant. Does anybody have any tips about making a scene from that perspective. Thanks.

Yes, don’t do it :). Just because ants are that small in real life doesn’t mean you have to mimic that in unity. Make them just one meter/unit each. No way anyone will be able to tell the difference.

Depending on the style, include lots of detail in the environment. Stuff will look really big, so you’ll see all the dirt, scratches, fibers etc. that you wouldn’t normally notice unless you looked at something really close. Also, keep in mind that many things that appear straight actually aren’t in real life. An edge of a desk may look straight, but when you get up real close there’s actually a lot of small deviations, etc. You may need to “wonkify” (i.e., add small errors) objects a bit so that they’re convincing looking. Objects of wood are especially this way, their edges may look straight but if you get up real close you can see that that there’s actually usually a bit of deviation (unless they’re well made). At the scale you’re talking about, any flaws in the manufacturing of an object will be much more apparent.

As for the physics side of things, I’m not sure. You don’t want to scale your scene really big or really small since that will mess up the physics a lot, but at the same time “regular” scale physics might also look weird due to the difference in what scale the scene looks like its in versus what scale the physics engine thinks the scene is.

“What’s size to you boy? It’s all in your mind!” --Master Rahm Kota, Star Wars: The Force Unleashed

Depending on what you’re up to, what matters isn’t units of measurement; it’s relative scale. For an ant-sized game, possibly a ‘world unit’ would be the relative size of a commonly-picked up object. An ant could be a ratio of that (assuming the item is the size of the ant’s head, we’re talking roughly 1x1x3 world units). A tunnel could be a ratio of that (one piece is 1.5 ants tall by 1.5 ants wide by 1.5 ants deep). A tree could be many times that.

This is a problem I ran into with my first game, SHMUP: Orbital Combat. I have a gas giant thats about 400x the size of a pickup, ships that are about 3x the size of an item pickup, and rocks about 7x the size of an item pickup (depending). Trying to do everything by the units was getting out of hand quick; I switched to relative sizing, and everything clicked into place far more easily.

thanks for the advice. Now I think I am going make the game cartoony that will make the texturing simpler. Still not sure about the physics. Also, right now the character is very small person but I might make it a ant or small bug so does anybody know of free or quite cheap bug models with animations. And I am going to use this thread as my WIP for this game(need a name maybe “A Ant Sized Scene”).

Yes, physics should be your sole guide to object sizing. The physics simulation is heavily reliant on the real world size of rigid bodies. You can’t just independently speed up/down the physics simulation. The ONLY way to change the physics speed is via Time.timeScale which is indeed global in that it effects animations, deltaTime, physics, Particle System, etc. It’s unfortunate really…

What is the benefit to this?

With the way floating point numbers work you get the same relative precision (number of significant digits) regardless of scale, so what’s the point in making things difficult for yourself by not working to actual scale?

The only thing I can think of is that in the Editor the camera speed is way too fast for making small scenes. (There really should be a preference for that.)

As Daniel said its the physics thing. In a virtual world the physics work well at scales we’d often expect eg 1 unit equals 1 metre, but getting microscopic, the equations are going to weirder and less accurate. From experience. Let me put it another way. years ago Ive made the mistake of having vastly over (or under - cant remember) sized scale in scenes and physics was a disaster and I would do everything around the defaults now and forever. by all means go for giant scales or microscopic, but if requiring physics as well, I cannot recommend it.

Physics might become a problem.

I know I’ve had problems at the other end of the scale, going too large. When we were doing a 2D physics based game and started out trying to make our graphics pixel perfect, it meant that something that would have been 2 meters high in real life was like 50 units in-game and without major tweaking the physics acted extremely slow and floaty. To save ourselves time we ended up just not trying for pixel perfect sizes and get more realistic movement quicker and easier. Maybe we were just missing something but I’ve read about this problem on other blogs as well.

Something worth testing at least.

EDIT: Beaten.

But I’m suggesting making things at 1:1 scale, ie, not scaled up or down by any amount.

If an ant is 3mm long then model it as being 0.003 units long. Your computer doesn’t care where the decimal point is, it’s the significant figures it cares about.

Or do you mean that PhysX gives unstable results when used with small objects/forces/distances, and as such you’re better off scaling everything to some macro scale to deal with that? As you guys have said, though, over- or under-scaling your world means that physics will seem floaty/jumpy, unless you take special effort to ensure that all of your accelerations/forces/speeds are also scaled accordingly.

Yes. What I was attempting to say was that an ant of size 0.003 units long in Unity may not act how you (or your players) would expect a character in a game to act.

If, for example, you’re playing as an ant and make your character jump and you expect its physics to act like if you were controlling a human character, you may have to make your ant a similar size as a human in game (e.g. about 2 units tall). It might work and look good at 0.003 units or might not. That would require testing. But the physics of a 0.003 unit object would act very differently to a 2 unit object and in the end it would probably be the gameplay/physics feel that would win out against realistic object sizes.

To back up what I’m saying, the Unity documentation says that the unit size of an object is the most important aspect in determining how physics will work/react. The following quote is taken from the Unity documentation (here, under the heading of “Using the right size”):

Now I know that that quote says “objects of different sizes should be modeled to accurate scale” which seems to go against what I’m saying but I’m just advocating testing different scales to try and get the feel you want. Would realistic physics for an ant be fun to play or would you want/expect similar physics to nearly every other character controller game out there with human (or similar) sized avatars?

An ant at 0.003 units is smaller than the default physics penetration setting. You will need to tweak the default settings a bit to work well at small sizes and it tends to be a trial and error thing if you deviate too far from the 1 unit scale.

What is this, a scene for ants!?!?!?!