zamaszysty wrote:
Just an idea You know
...
Hey, hope you're still around.
I'm away from the forums for some time now, but I do care about my old assets, and maybe I'll get back to them sometime.
AFAIK, buidlings can be composed of multiple meshes, actually all of them are like that already - we have baseplates, and the buidling itself. The baseplate isn't changed when the building is upgraded, I don't know how the code behave about it since the farthest I've gone with modding was with units. That gives us a hint that it could probably be coded so that only some of the meshes of the new building (a new model, but with separated meshes, one for the first stage - identical to the unimproved structure - and another for the additional parts, that is, the upgrade itself) are altered or "inflated" during the upgrade.
This way, only the upgrade would be added to the structure, but we still have a little would-be issue: it would, as the animation currently is, grow from the ground, which could be undesirable in some cases (upgrades that are only atop the building, for instance). That I can't tell, but probably the current code doesn't allow to set the height at which the model starts to stretch to fit its final shape.
But anyway (and that's a big ANYWAY),
I think the building animations should be changed for it to have multiple stages - much more lovely, and much more informative than the current animation.
I will speak about it now, but for those that aren't interested, I say in advance that IMHO those improvements shouldn't be our main priority right now (that last is specular and normal mapping, again "IMHO").
My idea for the building animation is the following:
Building stages. When you're constructing something, the current animation only displays the final model "inflating", which is a bit frustrating and, I daresay, unpractical for the player to easily tell the stage of completion that the building currently is in. My idea would involve making it so that all the
base facilities models are made with at least 3 meshes, being them only fractions of the final building, and not the final building itself.
The "inflating buildings" were caused by the limitations of the graphics processing potential of both the engine and hardware from the epoch WZ2100 was developed. We may now have the possibility to change that (but that should only be made in the future, as I already stated that I think).
The first two meshes would be a rough infrastructure of the final building, and they can be "inflated" as they currently are, but one after another. That is, we could have the steel infrastructure model grown first-handedly, assuing a really rough shape of the final stage. After that, the second mesh, the concrete infrastructure, could be grown over the ateel infrastructure, assuming more of a final shape, but still rough and unfinished (no real walls yet, just beams and pillars). After all that is fully grown, the final model would grow to its final shape.
Besides the visual improvement in the animation, that can aggregate a strong practical information for the player, as it would be easy to tell the approximate stage of the construction - we have then 3 main stages, and the player can easily, even sub-consciently see that as milestones that represent a percentage of the progress in the construction: If the steel structure is still growing, then the building is not even half-finished. If the concrete one is already present ald almost finishing, then the building should be around 40% to 60% complete. If the finishing is already growing, then it won't take long for it to be functional. Currently, since we can't have a clear view of the vertical growth and it is unpractical to compare the current and final height of the building (it is very unpractical to try to remember the final appearance of the building in your memory and try to compare that with what you are actually seeing - it is much easier to compare two things that you're effectively seeing), and therefore, it is often troublesome to easily stipulate what is the stage of construction.
But then, there's a would-be problem with that: How could the player easily tell what building is being built, if they're queued and he can't clearly remember what he placed where, and the first building stages aren't similar enough to be easily associated to the final structure "at-a-glance"? The answer is in distinct baseplates. IMO, they need to be done so that the player can distinguish:
a-What building it is, based mainly on visual informations from the baseplate.
b-What is the current stage of construction, based mainly on visual informations from the look of each stage of the structure itself (sounds intuitively correct and practical for me
)
The infrastructure models could be made of simple faces with transparency so that they can look like thinner pieces without the need of intricate meshes or high poly-counts. If someone is up to make effective 3d meshes for the infrastructure, poly count wouldn't even be a problem because it would be just a question of setting the model to stop displaying the infrastructure meshes after the last one reaches its final form and the building is finished.
Defensive structures could possibly be resumed to 2 stages: infrastructure and finishing (needless to say that even then the fifty/fifty milestone would also help on determining the completion stage)
I don't think we need different ways of rendering the construction animation, like making blocks spawing or polys unfolding of anything like that - we sincerely don't even have the manpower to do that (please note, I'm not trying to tell that I'm staff or anything, it's just a way for me to express how I still feel like part of this open-source project that is free for the community to develop). IMO, great improvements (both visually and practically) can be obtained by changing the building animation so that separate pie meshes (of specific levels) are grown in a specific order, and lastly, some of those specific levels are removed from the rendered model to avoid harming the performance. We could also use levels that are instantly displayed without the animation, to produce the "add-on" upgrade effect that zamaszysty proposed.
Sorry for the overwhelming post, but most of you already know that I like to describe things in a good way, along with reasons.
All of those improvements in the code or scripts (I don't really know, probably I'll go through a programming course to be less ignorant in that aspect) are now guaranteed to have returns for the community, I daresay. We are seeing the Art Revolution being developed in an advanced stage, it is really touching for me to see what it became and how the guys are doing great models and earning the admiration of the community. Hopefully it also works as motivation for the staff, as a sign of how WZ2100 will always have something about it and people willing to help. It would be boring if I told that I still think that all work would be more effective with coordinators, so I'll stop at mentioning it, so please don't mind if it is really a nuisance.
Best regards to all, especially to those with patience to read all this and think about it. I've wrote that for you.
~Olrox