homepage

Skins

Posted By: FireBird_[WINE]

Skins - 11/09/15 03:32 AM

http://vimple.co/7653e37dc6bf448ab2571d36876706cd

Ability to use several skins for the same type of objects simultaneously.

Skin conversion utility

How to use the utility

Foreword

The goal of creation is dual.
First of all, is to have different skins on the objects of the same type.
The second one is linked with the question I mentioned in a side - number of textures per scene and its influence on performance.

The converter gathers all textures of the scene (it's allowed to gather) into a single one called "skin", modifies the objects to refer to that texture, and modifies the scene to refer to those objects.
That's why by default the resulted skin is enormously huge.

The goal of the converter is to assemble all of the textures into the single skin. That's why it must copy all of them into one place.
Moreover, some textures are used in tiles mode. It means upon copying the converter must manually tile them several time to respect the original usage. When a tile itself is big (and most of them are) the result is huge.
Also, converter is dumb. It does not know which textures are important and which are not. And the result is that terrific.


Some words about objects/scenes.

(I) Those are "default" game objects - stored in cohokum\3ddata in .bin files.

(II) The ones ee_exp creates exporting those bins into LWOs and LWSes.

(III) Influenced by modders, retextured, renewed, created from a scratch. They are still in LWO/LWS format.

(IV) Data from (III) converted into EEO and EES. They usually reside in cohokum\3ddata\objects (ABCD.EEO, objects shared by different scenes) and cohokum\3ddata\objects\somedirectory (EES and scene specific EEOs). As long as (III) can be modified several times, different (IV) may exist at different time point.

(V) Skin Converter takes (IV) and creates LWOs and LWS referring the skin texture. According to the achieved result the process may require reediting (III) and reconverting them into (IV), and (V). Of course, different (IV) produces different (V) and skins may differ greatly.

(VI) Probably (V) should be tuned a little (LWO and LWS again).

(VII) (VI) converted into EES and EEOs, and used with skins in the game. Note, that (VII) objects are not applicable for skin conversion process. Once the scene is converted, the result cannot be converted again. That's why it may be crucial to preserve (III). And maybe not - I don't know.
Also, (VI) files may be required later - for conversion into formats differing from EES and EEO.


The first test run of the converter

1. Create a directory, place ee_skin.exe, config.txt and ee_skin.cmd there.
2. Edit config.txt - change the directories names to reflect your EECH installation directory. No quotes are required there.
3. Edit ee_skin.cmd - again, change the directory. If the resulted path contains spaces, it must be wrapped in quotes.
4. Run ee_skin.cmd. Wait a couple of minutes.

A new directory with the name of the scene mentioned in ee_skin.cmd will be created and filled with modified files.

5. After the converter finishes go to that directory and open skin TGA file.
6. Be terrified by the result.
7. Go to the "usage (hard version)".


Result files

1. LOG file. Converter writes about all the deeds there. We will need it when we begin to cope with problems of terrific result.
2. Up to three skin TGA files (for different seasons, if source textures had variations for them).
3. Animation TXT file mentioning the textures above. All skin files will be referenced in that file.
4. LWS and LWO files for tuning (if required) and further conversion.
5. Helper CMD file converting LWS and all of LWOs into EES and EEO.


How the converter works, detailed information of CONFIG and LOG files

First of all it loads the scene and object files. Object files are "default" from bin, "common" from "common_objects" and "scene-specific" from the directory EES file resides.

Then scene's objects are traversed to find the used textures - LOG file has a lot of entries about them.
Some of those textures are ignored. Those are (1) mentioned in animation files (loaded from "animations" directory) and (2) mentioned in "[IGNORE_TEXTURES]" section of CONFIG.TXT. Textures used for luminosity are ignored too.

Then the textures are tried to be loaded. Look at "[textures]" section and LOG file. In the config the most important are the first and the last
directories.
The first one is the one created by EE_EXP - containing default EECH textures. When (VI) LWO files are loaded into Lightwave they may be required, and the converter automatically refers them.
The last one is where all of "override" textures are placed.
If some tile texture is a little too big, a smaller version of it is placed there. It will be used instead of others.
Please note that at this stage desert -D and winter -W textures are being tried to be loaded too. All of them (if present) must be of the same size. If a smaller version of one of those is made - the same for others should be done too.

Then textures having alpha are discarded too.

Then the resulted texture info is generalized. For each texture it's Actual (existing file) size is written, and also that UV usage information leading to Required size calculation. At this moment how large each texture will be in the resulted skin is clearly seen.

Then those (tiled) textures are aggregated into a single skin. One
pixel gap is used between them (it's clearly seen if blue_fill=1).

Then the objects are traversed again, modified and converted into LWO.
Please note that those object still refer "ignored" textures. And as long as Lightwave doesn't support DDS, probably TGA version of them are required to be placed in "override" directory beforehand.
Please note that our DDS files are (due to some bug) flipped vertically. When converting DDS into TGA you should flip them again.


Several ways to influence very big result textures.

1. The easiest. Place the texture in the ignore list. But it contradicts with the goal of the converter - to decrease the number of textures used. But I had to do that with SCRATCHED_GLASS, for example.
2. Use the smaller version of texture. Resize one (or three if -D and -W present) and place them in the "last in the list" textures
directory. As long as they will be used only for conversion process, not for the game, there is no need to make them of "power of two" size. For example, you can make the biggest texture 1024x1024 to be 1024x768 and force others to fit 1024x256 place.
3. Modify the object using that texture (or scene using that object).
The object name is seen in the beginning of the LOG.
That might be trickier and requires (III) files (or (IV) converted with EEO2LWO and EES2LWS).


How to create a good skin
I don't know. Will _you_ tell me and others about it?
Posted By: FireBird_[WINE]

Re: Skins - 11/09/15 03:36 PM

Hey, guys! Why there is a silence in the air? Have you not found what the feature is?
Posted By:

Re: Skins - 11/09/15 04:13 PM

different skins on one map? biggrin
Posted By: FireBird_[WINE]

Re: Skins - 11/09/15 04:58 PM

Exactly! And nearly no manual labour for that. You take an existing model, convert it, make as many skins as you like... and voila!
Posted By:

Re: Skins - 11/09/15 05:36 PM

Another great idea smile how it will be done? Other model names lwo, or in the ini file?
Posted By: FireBird_[WINE]

Re: Skins - 11/09/15 05:48 PM

The model is still single. Number of skins is just a number of textures enumerated in the text file.
Upon game object instance creation EE chooses a random one from the list (seasons will be respected a little later, when there are several skins for different seasons).
When controlling the gunship you just press a key, and skin is changed. IF you want to view a team of painters making that operation in the game, you need to make them in Lightwave first. wink
There's no limitation on the type of scene to have skins. Not only choppers may have those, but vehicles, planes, personnel... You name it.
Posted By:

Re: Skins - 11/09/15 06:44 PM

LOL Now I understand what you mean about brigade of painters hahaha
Posted By: Soczkien

Re: Skins - 11/09/15 07:41 PM

Very good feature in my opinion smile
Posted By: FireBird_[WINE]

Re: Skins - 11/10/15 02:12 AM

Guys, I need one with a bright mind.
The conversion utility is easy to use, but if you want to achieve a good result, you need to use a lot of tuning. The skins are of no use if they are 4096x4096. 50 MB per skin is a little too much - even if we want to have skins for different gunships/vehicles.
I'm not very skilled in understanding of goods and bads of texturing, thus I need someone to try to use the utility AND write a comprehensive guide of its usage in EE Central Wiki.

So, please help. If two of you cooperate, it may be even better.
Posted By:

Re: Skins - 11/10/15 05:48 PM

From my experience for ground vehicle is enough GOOD 256x256 texture.

Surely more= the vehicle looks better,but the demand for memory increases very much.And imho it does not make sense.
Thealx and Ignarik helicopters texture looks fantastic.
It was a shame to decrease and 1024x1024 let him be.

All other textures larger than 1024x1024 It does not make sense, because in the game you can not see difference.
My 2 cents.Maybe you have other wink and we determine some standards.
Posted By: FireBird_[WINE]

Re: Skins - 11/10/15 08:03 PM

Well, no, it does not work that way.
You will need to tune the converter (not the source code of it) to achieve those 256x256 for specific scene. Or postprocess the result.
The converter is simple and dumb. When I use it for current Longbow, I achieve that 4096x4096. That's not as good as it should be.

So, there is a work for a brilliant mind - find the way how that dumb and simple converter may work with our beautiful textures and produce anything gorgeous.

If you're in, please PM me your e-mail, I'll send the converter, usage instructions and my thoughts (probably false) of tuning ways.
I say again - I'm not good with textures, I don't know what are good and what are bad for them.
Posted By: FireBird_[WINE]

Re: Skins - 11/13/15 02:48 PM

I have updated the top post.
Posted By: FireBird_[WINE]

Re: Skins - 11/13/15 08:43 PM

Guys, if you're not interested in usage of the converter, maybe someone rewrite the description in simple words, please?
It seems to me my English is not globally understandable, and I'll be glad if someone translate my English into common one.

Thanks in advance.
Posted By:

Re: Skins - 11/13/15 08:58 PM

I think that it's about something else wink pontmimi is probably from Japan,and poor know english. My english sucks too.
google translate what is we all know.But the sense and the message i can understand in ~90%.
Unnecessarily you are irritated.
That the very few people who want to do anything for eech also we not change sigh
Posted By: FireBird_[WINE]

Re: Skins - 11/13/15 10:20 PM

It's not an irritation in any way. It's just sadness and regret.

Yes, the English is not a big problem, but still it is. One problem less is better than one problem more, and that problem in no way personal.

Looks like aviasims lost their attraction, a lot of people stopped to be interested in them. Also there was a huge redistribution of people among sims. The tied team with aggressive marketing consumed the best resources. An anarchy fails versus a state.
Posted By:

Re: Skins - 11/13/15 10:33 PM

Also it hurt me for years.People prefer a simple shooter, than complex simulators.
Simulators are too difficult.Look what now doing other games.For idiots, without any difficult.
When will be released ANY simulator? (DCS skipping because this #%&*$# is infinite beta
with horrible requirements).light years ago.Times have changed, and will never come back, that's life frown
Therefore, the more I'm glad the EECH still alive.Because there is no other choice, and no longer will be.
Posted By: FireBird_[WINE]

Re: Skins - 11/13/15 11:02 PM

"Life.." My pink glasses tell me that a human is a special kind of animal. The difference is where animals adapt themselves, humans adjust the environment.
For now the real opponent for humans are other humans only, and nothing else. "Natural" processes are not what we observe.
Nuff said. No go means no go.
Posted By:

Re: Skins - 11/13/15 11:11 PM

Wise words. Now we live in a relatively peaceful time.
I do not even want to think what will be for several decades.When run out natural resources.
Only then will begin the real era of animals.
Posted By: rapota

Re: Skins - 11/15/15 03:11 AM

Hello
To you to strive to better this game I want to pay tribute.

I noticed.
It is freedom to choose a skin on the game,
For example, you can choose whether to whether Japanese army to US army after the game start the UH60.
AH64 of Japan and the US can exist in the same map.
This is great!
Please by all means to complete. I'll be waiting.
Posted By: messyhead

Re: Skins - 02/23/17 11:24 AM

Is this converter still available anywhere? The links in the first post are dead.
Posted By: Soczkien

Re: Skins - 11/26/17 09:21 AM

Firebird is this utility still available ?
Posted By: XIII

Re: Skins - 11/26/17 11:37 AM

Im afraid no, ask him via mail?
Posted By: messyhead

Re: Skins - 11/26/17 03:03 PM

The code was in the repo, so I've compiled it and uploaded it for sharing.

I've updated the link in the first post.
© 2024 SimHQ Forums