(24 Apr 22, 04:13PM)Mr.Floppy Wrote: Well, it's hard to explain everything I want to say, so I decided I give it a try myself and set up a little proof of concept on how to do 'high fidelity' in AC v1.3 using the cube engine as intended. Get the download and extract it into your personal AC-folder. It contains a map called poc_container and all assets required.
Download: packages.zip (1.8 MB)
Note that this is only 1.8 MB! Not even close to your 30 MB and it has basically everything you wanted and appears to perform just the same.
Admittedly the container model skin is somewhat sanitized (using only the door face on either end), which helps a lot in optimization. But it's exactly those trade offs you have to find in order to keep things within reasonable file sizes. However and more importantly, my skins are properly optimized in terms of space usage, that is, no black areas and no doubling of the same parts, which allows me to keep the size down to 2046 x 2046, while maintaining almost the same effective resolution like your 4092 x 4092 version.
There are two skin variations missing (grey and light red), which would only add around 400 kB each to the package size.
Hints and findings:
- Bullets are being stopped for human players only. What you experienced is only happening with bots. Maybe a bug that should be fixed, but nothing to worry about too much. You can use clips (/newent clip) or clip-tags (/edittagclip) if an area can be blocked from ground to ceiling.
- Stencil shadows seem to be broken, or were implemented only to work for small models intentionally (key word: simplicity). I wouldn't enable those (see: md3.cfg > mdlshadowdist 0) for most models actually.
- Huge models should have vertex lighting mode enabled (see: md3.fg > mdlvertexlight 1). This way the model will be lit per vertex, rather than uniformly per the light value which is found on the cube where the model is put.
My conclusion:
There is no use in 'baking' everything into one gigantic model. From a mapper's perspective it is always better to be able to work in the engine's native editor, so one can change around positions on the fly, make use of geometry (collision, occlusion, ...) and so on. From a performance perspective I see no benefit. To me it looks like you're assuming a lot of stuff, which simply does not work like that in cube's rendering pipeline (e.g. number of draw calls, amounts of vertices change when solids are added).
Finally, please don't get this wrong. I really don't want to stop your enthusiasm and I don't want to be the old smartass neither. After all you inspired me to do this POC and I'm actually thankful for that.
But, frankly you seem to lack quite some understanding and experience for what you are trying to achieve. For one and you said this yourself, you have no idea how the cube engine works, which is the core issue in my opinion. Secondly, the container textures have a lot of flaws, like overlapping, obvious mirror fill ups, wrong orientations, visible copy/paste-seems and poor colour and contrast adjustments. You really got to step up your Photoshop skills and be a lot more disciplined, when you are aiming for 4k quality.
First of all, appreciate that you also give it a try.
Ive checked it and yea, you cut off 3 container sides (the idea was to brush containers later on, grafiti etc to not have this clean look, each container side with a different look*) therefore it requires all of its faces to safe textures (6 faces you cant fit within a quad texture without black, which isnt a big problem since black pixels need less kilobyte compared to color)
To the hints,
I also figured that stencil shadows seem to be meant for small models (everything below camera) while thats not huge deal, since we dont have shadows in maps anyway (besides models)
To the clips, yes thats good to know but since we´re creating most walls via model faces, you could scale the model down for multiplayer and have a kind of "wallhack" since you will be able to see thru clips.
And obviously nothing here is final, i made it within a few days (texture orientations, overlapping, sky not fitting correctly etc. i know all of that...but the way i work is seeing something, knowing faster how it would look like, the tweaking comes after that (i mean it could look totaly shit and you would spend all your time in perfection and later deleting all files) Also im modding an old game as far i tought, im not touching a AAA here.
And im also checking hardware usage in realtime, while i wont have to for this...
The placed pickups we can ignore pretty much, since they´re the switched 8-16 verts ones, also they add up on environment vertices/evt.
Now my method, updating in process(geometry/walls within the containers will work for bots aswell):
I probably dont have to tell you the huge difference it makes (not even on low hardware) having 16.000 world vertices/wvt and 6000 wqd, compared to 2000 wvt and 500wqd. Remember the heightfield itself costs performance while 128x128 map is less than 256x256, that comes on top.
Conclusion, both methods have its pros and cons, while for performance/graphic a big mapmodel is the better choice, again you could have the same amount of models in this case containers 100 seperate models will cost alot more performance compared to combining 100 to one, since a processor likes 1 task and not multiple (stop and go effect). Sure for this game and those models the difference is not that big, the moment you add 10 pallets or something else you quickly find out, minimum verts for a pallet is pretty much 160x10, 1600 verts.
At the end, i wanna work together...and i see what you could do, what i dont know...and im sure that you know the engine better (commands etc.) for example implementing it correctly...for the moment all been "alpha" state.
EDIT:
I somehow couldnt understand the huge difference of world vertices and ive also noticed something strange which seem to got confirmed now. I just dont know if its only on this hardware.
Same i´ve noticed when creating/increasing map geometry within the editor, sometimes its correct vertices sometimes its way more as it should be. Sadly i cant check on more devices atm, so it would be nice if a few of you could check Mr.Floppy´s version out and go into that exact corner looking to the corner of that wooden box (writing us the wvt/wqd stat amount you see right bottom).Please restart the game a few times, to check if its consistent. Would be really important, if it would be an issue which appear randomly and not hardware related we would be fucked up, when comparing Map Designs.