Hi !
Featured games (91)
games approved by the League of Dukes
Games in Showcase (808)
Games in Android Showcase (239)
games submitted by our members
Games in WIP (872)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  What's the average size of a 3D game?  (Read 614740 times)
0 Members and 1 Guest are viewing this topic.
Offline ImTroyMiller
« Posted 2014-05-17 09:54:27 »

I'm currently building a game engine for my game and my game takes up 56mb(installed).  I only have two characters with animations, a few houses, four large playing areas, a control system, a camera system, and a general layout for the logic.

It's the large texture files that's taking up so much space.

How big are some of the popular 3D Android games?
Offline quew8

JGO Knight

Medals: 53

« Reply #1 - Posted 2014-05-17 17:24:41 »

What image format are you using? Make sure it is compressed and make sure that they are not needlessly large images. For example: if the image has a higher resolution than the average android screen (without specific reasons) then your doing something wrong.
Offline kingroka123
« Reply #2 - Posted 2014-05-17 20:30:27 »

I know that Asphalt 8 takes up about 800 mb but that is one really good looking mobile game so I would aim for less than that
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Slyth2727
« Reply #3 - Posted 2014-05-17 21:19:43 »

Well it's really all the textures and models. The code hardly takes up any space.
So with some simple shaders and lighting, you can make a really nice looking no texture game. You can take it even farther and just program primitives such as a sphere generator, a box, and prism. With that you can make a simple, smooth, and beautiful game.

However, if you're going for a shooter or realistic racing game, you need tons of textures and models. These will take up lots of space.
A trick with the models is just to make a simple per pixel lighting shader. This will make the normals across each face of the model seem smooth, so you can use much less vertices and indices and still have the model look the exact same as it would with millions.
Offline BurntPizza

« JGO Bitwise Duke »

Medals: 486
Exp: 7 years

« Reply #4 - Posted 2014-05-17 21:34:31 »

I'd say it doesn't really matter too much and you shouldn't care to much, but it's always good to not wastefully bloat your game, e.g. using WAVs for long audio tracks (yikes).

You could employ tricks like optimized png images, but then load time will increase, especially since it's going to be on mobile.

Procedural content is also an option, but I wouldn't recommend it if you don't need it.
As an example of just how far the rabbit hole goes: This video (music and all) is created by a program that is 64kb in size.
Offline ImTroyMiller
« Reply #5 - Posted 2014-05-17 22:09:47 »

Well, I change the textures for my "gaming worlds" to just a tiny green area(for grass) and the size dropped to 4.30mb(installed) but it looked like crap.  Didn't surprise me though, these files are huge.

I want these dirt pathways that lead around to houses and whatnot.  I used the Texture Paint feature in Blender to make the texture.  If I use smaller images, the texture looks blurred.  This is a picture of my model in Blender with the texture showing...

The file is saved as a PNG file.  Here's a picture of the size...

I know that I can make the entire model textured with the grass alone and it only requires the small grass texture, but I really want these dirt pathways.  Maybe I can select everything except for the faces that the pathways are on, do a UV unwrap, use the small grass texture, scale it way up, then do an invert selection, do a different UV unwrap to a different image, and paint in the dirt pathways surrounded by grass.

Any ideas?
Offline BurntPizza

« JGO Bitwise Duke »

Medals: 486
Exp: 7 years

« Reply #6 - Posted 2014-05-17 22:43:55 »

Nobody uses 1 giant texture for terrain, it is almost always a small (ish) texture that is then tiled. The tough part is getting a texture that tiles nicely, to start out I would just use something like this:

You want to look for "seamless" textures, which means they can be tiled without looking crappy. You can also find tutorials on how to make your own seamless textures.

For the roads, you would have to render those on top of the terrain, again probably with a seamless texture. The roads would be loaded in as a series of points that can then be connected together.

Real nice blog post by the dude behind Outerra on road generation:
Note that all the terrain texture is procedurally generated, down to every last blade of grass!
Offline ImTroyMiller
« Reply #7 - Posted 2014-05-18 19:28:23 »

Thanks for the link.

I've changed the ground texture to a small grass/moss texture and tiled it, but I think I must have scaled it up to much, because it's was running way slow on my phone.  I scaled it down a bit and it ran much faster.
Offline tberthel
« Reply #8 - Posted 2014-05-18 20:11:18 »

ZeptoRacer 3D is 760k
Tank Massacre 3D is 1064k
Neon Puck 3D is 1475k
Evil Kitty 3D is 35MB 25MB is for music

So it depends on your game.  You can make a 32k 3d game or you can make a 32 gig 3d games.  It is up to you.

For Android I recommend the less than 4mb and double that every 18-36 months.

Offline DarkCart

JGO Kernel

Medals: 124
Projects: 9
Exp: 50 years

It's all in the mind, y'know.

« Reply #9 - Posted 2014-05-18 20:49:52 »

It's never a good idea to clump everything together into one giant file. For example, I'm making a game called Diamonds. Instead of using the conventional sprite sheet, which takes up a lot of room but usually doesn't contain that much data, I use 5 or 6 2KB apiece files. So, when I export the game for distribution, instead of coming to a couple of megabytes, it comes to 111 KB. That's just my 2 cents on this topic.

The darkest of carts.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline ImTroyMiller
« Reply #10 - Posted 2014-05-19 07:44:01 »

I just added a model of a three story house and the size only went up 256KB(.25 MB).  I'm going to have to learn a bit more about applying textures, although I think I have most of it down.

Here's a video of what I've got going on...

<a href=";hl=en_US&amp;start=" target="_blank">;hl=en_US&amp;start=</a>

I also have five other worlds(of the same size) with different hills, two small houses, an animated switch, a small fence, and a NPC that walks along a path(although that path isn't there currently).
Offline Drenius
« Reply #11 - Posted 2014-05-19 15:37:01 »

Kinda a derail, but why do you use this ponderous control system? And dont even make the rotation faster?
Offline ImTroyMiller
« Reply #12 - Posted 2014-05-20 09:14:36 »

Kinda a derail, but why do you use this ponderous control system? And dont even make the rotation faster?

This is only the beginning.

I now have it set up so that the character slides along the walls, rather than just stopping.

Next is jumping, which should be easy.
Offline Oskuro

JGO Ninja

Medals: 77
Exp: 10 years

Coding in Style

« Reply #13 - Posted 2014-05-20 10:04:47 »

Nobody uses 1 giant texture for terrain

True, if you consider John Carmack to be nobody: Megatexture

Offline BurntPizza

« JGO Bitwise Duke »

Medals: 486
Exp: 7 years

« Reply #14 - Posted 2014-05-20 14:12:10 »

I will revise my statement: No sane person uses 1 giant texture naively without caching precautions.

That said, OP could also use a technique like that, but it's probably more than it's worth for someone in his situation.
Offline EgonOlsen
« Reply #15 - Posted 2014-05-20 19:28:19 »

Nobody uses 1 giant texture for terrain, it is almost always a small (ish) texture that is then tiled.
Yes and no. You wouldn't use it to texture the whole terrain but you can very well use one larger (i wouldn't call it "giant") texture as a splatting texture and that's often done for creating pathways, which is what ImTroyMiller wants to do. So you basically create something similar to this:

and then use a shader to mix your (tiled) textures based on this to create something like this:

The yellow circle in the splatting texture shows the part that is responsible for the result that you see in the second image.

Pages: [1]
  ignore  |  Print  

Riven (846 views)
2019-09-04 15:33:17

hadezbladez (5789 views)
2018-11-16 13:46:03

hadezbladez (2602 views)
2018-11-16 13:41:33

hadezbladez (6205 views)
2018-11-16 13:35:35

hadezbladez (1498 views)
2018-11-16 13:32:03

EgonOlsen (4733 views)
2018-06-10 19:43:48

EgonOlsen (5791 views)
2018-06-10 19:43:44

EgonOlsen (3275 views)
2018-06-10 19:43:20

DesertCoockie (4174 views)
2018-05-13 18:23:11

nelsongames (5500 views)
2018-04-24 18:15:36
A NON-ideal modular configuration for Eclipse with JavaFX
by philfrei
2019-12-19 19:35:12

Java Gaming Resources
by philfrei
2019-05-14 16:15:13

Deployment and Packaging
by philfrei
2019-05-08 15:15:36

Deployment and Packaging
by philfrei
2019-05-08 15:13:34

Deployment and Packaging
by philfrei
2019-02-17 20:25:53

Deployment and Packaging
by mudlee
2018-08-22 18:09:50

Java Gaming Resources
by gouessej
2018-08-22 08:19:41

Deployment and Packaging
by gouessej
2018-08-22 08:04:08 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!