Hey all,
I am currently helping some friends work on a UDK project on my free time, and ran into a sort of nagging question everyone seems to have.
I am doing a telephone, 1950s era, and because of the design, I feel like it's pretty high poly. Now to preface this, I am used to working with a much smaller tri count at work (as are my friends) but we are wondering if we should try pushing the tris; since our project is all puzzle based and will feature no characters, should we focus on making a bad ass environment (which will have "dynamic aging"), or should we focus on portfolio pieces that fit a different criteria? I'm kind of stuck at this point, it's not high at 1452 tris, but is that still too much for something like this or should i go strip crazy, haha. Any opinions are welcome!!
Highpoly took about 5 hours.
Lowpoly about 2 hours; sitting at 1452 tris.
Replies
If this telephone is an important prop that will often take up 15% of the screen space, its fine at 1.5k tris, if its just some prop for a fps, 1.5k would be way too much. I'm no video game expert, but that's what I've heard.
it also depends on how graphically intense the scene will be, if its cluttered with lots of stuff like this, 1.5k might be too much.
Also it may be a better idea to not worry too much about it now, but try getting the rest of the scene done and see how the performance is.
For random clutter like this you should go for at least half this polycount, probably under 500 even.
The dial (yellow) could be a floating mesh instead, getting rid of the red lines. Those other red lines could also be removed since the phone would retain almost the same shape and the edges could probably be combined to the blue line without losing detail (but that's up to you).
I don't really know what's up with the center part of the dial (ngon much? Or is it just the angle making it look weird?) but I'd recommend just having one cylinder for the whole dial and let the normal map do the rest of the work. If you do want the center part, at least fix the ngon like I've illustrated in the lower left corner. Also, the bottom could probably just be a flat plane if it's not going to be seen from underneath but again, that's up to you.
The rest of the paintover should be pretty self explanatory
The dial could also be alpha'd with the centre part being a seperate cylinder.
The ear end, listening part doesn't have to be complex either, just an alpha'd flat plane with shading would create the illusion of a depression, normals will take care of the rest.
Areas that need cleanup are on the front beneath the dial and the handle, try to keep quads as much as possible. Also, as long as your low poly is larger than the high poly it shouldn't matter, as again, normals will fix this.
If you try to break objects up into their constituent parts it will make uv'ing and texturing easier resulting in the end product being more realistic.
*You could do it the other way round also: making a heavier lp that can be easily reduced after baking by removing edge loops. Another reason to keep quads.
--
ps: I'm not sure whether you are using it already but xNormal is imo the most predictable and reliable baking tool around.
--
Well the alpha thing is an option, it sure would save some poly's as it looks like that part and the feet are around 50-60 tris? Alpha wise, if this object was done at <512px it may look slightly choppy but it also depends how you handle uv's.
eg;
You should be able to get away with using this method on the base with alpha, just ask yourself how close is the cam going to be and what is the purpose of the object. Is it a static prop on a table, animated prop on a table and or a throwable weapon?
Putting aside the base and alpha you could also use the quarter method for the dial and extend uv space giving your textures better clarity, just look for areas that are repeatable and mirror those uv's to free up space.
It requires an extra channel in the texture, more complex shader, and it won't for a nicely closed object(causing you to either see backfaces, or see through the entire object). Besides, the amount of polies saved would be negligible. You use 8 (4 quads) while he could get away with 12 (5 quads, 2 tris), just by floating the feet.
If anything were to get alpha mapping, it'd be the dialing ring, with it being transparent plastic and having holes.
Ah. Yeah you should try to make the environment as impressive as possible if that's all there is. Not having other characters and weaponry and a tonne of explosion effects should free up a nice amount of resources.
Though all depends on what kind of environment it is. Assuming your total specs are current gen and not a triple sli i7 monster, look at these examples:
This could probably use 1000-1500 polies so something like you currently use would be quite okay, especially if it's in a fairly prominent place. Furniture is fairly simple shaped, with the most complex models being the plant and the lamp, and it's clean and empty. Also, the cupboards have closed, nontransparent doors so there's few small objects rendered.
This room also has fairly simple furniture, so in that aspect is sort of the same. But there's a lot more clutter on the table and the leftmost cupboard. Worst of all, the bookcases in the corner are open and have quite a bunch of stuff in them.
You would have to go <1000 on most of the props (exceptions are the plant, oil lamp, cuckoo clock and big things like the couch).
Yeah, you're screwed. you get 10 polies for the phone =P
Anyway, send some more questions to your art director or team captain. The layout of the room isn't that important for you (yet) but the density and type of room is.
As for a portfolio: If anyone sees this ingame, they'll understand that the lack of characters etc gave you more freedom, though try to put some lower specced (separate project) props in the folio too. This question will also be null in a year or 2, when technology catches up. So definitely go for 'as pretty as possible'.
Adding an Alpha channel is the same as increasing the texture size by 50% or having another texture of the same size and would be pointless for something that is never going to be seen.
I would remove any of the bottom faces that the camera is never going to see and make the dial a cylinder that intersects the main body (maybe with a bevel on the top), so you can just have quads across the front.
As other people have said i would also make the topology of the receiver more even on both sides and remove the section where the wire goes into the base and bridge the gap as it doesn't really add anything to the main shape.
You should try to make the normal map do some more work really...if the detail is recessing you can prob. get away with using to the normal map to represent that geo. with out too many problems.
If any detail you are adding isn't re-enforcing the silhouette, get rid of it
Hope that helps!
The project itself is going to be set in an abandoned asylum (closed 1960), but there will be travel back to the past (Dynamic), so I wanted to keep that props as detailed as we can, to be able to better show that visual effect of traveling back and forth.
Oh, and I actually finished the lowpoly, sitting at 1208, I'll post that shortly. I make most of my hard surface low poly model from the high or mid poly I make, so I just strip stuff and connect it all together, then I strip it down to what the prop needs.
It would be astonishing to find that a 1bit alpha would cause so much memory overhead that it could cause the complexity of other objects/shaders to be scrutinized. BTW alpha can be added into a single 16/32bit TGA file, so why would it require an extra channel?
Actually, looking at the current config. it would save around 50 tris and on a small object like this that is a substantial saving. The feet could also be included in the bottom plane as this area won't be as visible, this will reduce the count even further.
And to futher disagree here because your opening statement was so bold and because I feel like it...
Alpha mapping the dialing ring would be a No. then a nonononono! Because you wouldn't be able to see the numbers, I mean what telephone doesn't have numbers?! On this type of phone the numbers are submerged on a card and are part of the dialling ring, I know because my parents have one.
Which faces are those, how does anyone know what is and what isn't going to be seen? Wouldn't it be wiser to make the object fully editable and not take parts away before it's purpose has been fully realised?
Thanks, I feel better now
For a prop this simple you would be best off not bothering with any alpha.
Don't go crazy on tris for minor props, but don't go overzealous with optimization either. For UE3 you probably won't see a worthwhile performance benefit in reducing an asset from 800 to 700 tris, or from 400 to 300 tris. Especially considering that adding a bit of extra geometry can mean the difference over whether per-vertex-lighting looks good enough to be used instead of lightmaps. In the sub-2000 triangle range, per-vertex lighting is generally quite cheaper than using lightmaps.
I was writing a long explanatory post about why you shouldn't use an alpha plane for the bottom, but nevermind. Let's just say that 32 bit uncompressed targa's are not a good thing to put in a game engine, and that your 4 polygon 'improvement' is not worth mipping errors, complex shaders and models with holes.
Also, I like this:
@Godemper0r:
Have you done this yet?
Also, just a note, I wasn't implying you should use alpha on the dialing ring, just that -if- transparency were used, that'd be the most sensible place. Best is to trick the viewer with some clever normals and specular.
Also, how are you planning to work through time? I'm working on a project that uses time influence and I'm curious as to how you guys are fixing it.
If you are looking to draw outsiders/attention to your project I would certainly focus on getting some awesome looking environments. The biggest sign of a mod/indie project is renders of props or clay renders of guns. having a couple shots of lit, well realized environments is much more attractive.
mood/atmosphere/sense of detail is what draws people into environments. look at any AAA title and 70% of the props usually arnt amazing portfolio worthy pieces. The end result of this phone is its going to probably take up 100-200 pixels on screen at the most, so the detail is going to be pretty much unreadable in 90% of circumstances. so a texture size of 256 or even 128 would suffice and adding alpha is a bad idea for sure.
The highpoly looks nice man, this kinda ended up deviating from the optimization a bit and more focused on part of your original question, so I hope thats cool. I would be really interested in seeing a well done aged environment with that dynamic aging you mentioned.
Righto
I said 50-60 tris, which is around 20-30 poly's = approx 1/5th of the total count in the model! Again this is looking at the current topology, not your example or what it could be in the future.
In retrospect the dialing ring is actually the worst place for alpha because it is the most visible area and means that more geometry would have to be made if you wanted to show numbers. As a result, less available uv space = the biggest quality killer of all.
I'm still waiting for the explanation on why I shouldn't risk using alpha on a chain-link-fence because according to you it is just too down right dangerous and expensive to risk! I kid, I kid:poly124:
Well here's the lowpoly I'm using for projection.
At 1208 tris currently.
So a few notes, Most of the geometry that was kept was for a specific purpose while projecting. The four chamfers around the base I left because I've never like the look of a soft edge/curve on a sharp lowpoly; you tend to get this weird effect that it looks fine when seen head on, but from the side, you see this black space on the corner where the highpoly had curved into the lowpoly, It's very noticable in the game Perfect Dark Zero (horrible game for normal mapping, btw). Also the mouth piece for the handset, To reduce it I would have to really rework my highpoly, or risk some weirdness I don't want, which is also why there is still a chamfer on the tops of the mouth and ear pieces.
Oh, and forget about the random tris in places, that's me turning my strips so the normals will display right...
Here's my uvs...
The red areas are pieces I've stacked to save space. Kind of hard to tell what they are unless you know the model...
Ok, onto specifics... About the alpha issue, It's not that I have an issue with it on this model, as I plan to do the dial on an alpha, I just find the technique to be overused and really not much of an advantage of the few tris you'd spend on it. Like I had said before, it's a personal issue really, :P
About like objects on screen, because of the "traveling back and forth" aspect of the game, the actual translating will be done only in specific marked areas, so I would like those areas to be really highlighted when that change occurs. So while in a normal room a prop may just be sitting somewhere, taking up little screen space, you may be staring at only a desk and the objects on it when the time shift occurs. So, as I've said before, I was more or less just wanting some opinions on this because these things may end up becoming almost center pieces to show off the time transformation. Doesn't it suck that this industry is so subjective?
@Snader "Also, how are you planning to work through time? I'm working on a project that uses time influence and I'm curious as to how you guys are fixing it."
What specifically do you mean? We are basically doing a ON/OFF switch between the past and present, using the vertex blending in UDK. We'll probably have some animations on objects to support that, and we'll have the two version of most objects (newish and old). As far as like time itself goes, I've come up with a lot of story elements mixed with mathematics to make it seem like you are really affecting things. I've also got a lot of "paradox" puzzles in mind , so things happened in the past that cause the things to be like they are now, which is the impetus for going back and changing things, and the whole thing is a loop. The point of the game is to break the loop. IDK if I answered anything you asked, haha.
@PixelMasher: Well, that's what this post was about really, I wasn't specifically asking for optimization help, but I appreciate everyone that did offer it! And the highpoly is the reason I actually agreed to do any art on this, been just flexing my highpoly modeling as much as possible; if I would've been sensible, I would've made something that would've worked better as game art, and not something that I thought would be fun to model highpoly :P Like changing the mouth piece to be exactly like the earpiece would probably drop this under 1000, but I really like it, and it's going to be annoying to change on the HP.
It's really interesting to see what everyone's ideas of good tech and bad tech is; I mean especially after working in a production environment, and just looking at how games actually do things; there's a lot of crappy workarounds in everything :P
[ame]http://www.youtube.com/watch?v=PZraqbdHZOg[/ame]
About the phone:
It looks like you have a few cuts on the horn which can be remove without any visual effect but I can't tell properly from the screen.
The cable looks a tad messy, it might be an idea to redo this with a spline(+some hand tweaking), shouldn't take long. It would probably also be easier to put a tiling texture on it, instead of having to make it match the highpoly.
Are you sure you can't fix the mouthpiece? It doesn't have to go all lowpoly, but currently the inconsistency is an eyesore. You could opt to increase the earpiece, but it'll cost you about 200 tris I think.
If you're going to put everything in one texture, you could shave off a few more polies by making the finger-stop-thing below the dial with alpha too.
Original post was 1460 tris. 50-60 tris ≠ approximately 292.
The dialing ring is a transparent acrylic, it makes sense. And it doesn't have to take up much texture, if you optimize smartly(see above).
For the wire, it's a repeated texture section on the map, so those extra lines are where the texture seams are. On the uvs its the top left area.
As far as the dial goes, and just the way I laid it out in general; repeating like that would be fine for a clean version, but having a dirty version using the same uv layout wont work well. Any rust I put on it (the dial ring is made of metal), would be very noticable as repeated.
The extra polys that you pointed out in the top image, I only have those there because I have been projecting using Max, and it will not project smoothly otherwise. So, I'm going to give xnormals a try tonight, and cut this down more to the tri count I'm used to, and see if I can't get better normals. And because the actual jack box is inset and then sticks out above, that's why I didn't float that piece.
And finally this is my reference. http://retrophones.files.wordpress.com/2009/03/232-black-1.jpg The drawer looking thing on the bottom is the bells; I just made them into the unit so It'd be more recognizable as an American phone (that is a british model)