Page 1 of 1

"Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 4:57 am
by giftheck
I've seen models on here that have 'lowres' versions that are simply the high-res model mapped to the lowres skeleton. Is there an 'easy' way of going about doing this?

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 1:29 pm
by commanderawesome
Tirpider's SchMEe tool does that: http://www.swbfgamers.com/index.php?topic=6680.0

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 3:16 pm
by giftheck
I'm already aware of this program and it does state that the method it uses is a hack that might not be suitable for all models. What I want to know is if it's possible in Mod Tool. I don't know if it's a simple matter of remapping points to bones that exist exclusively in the lowres skeleton (I've noticed that if you attempt to use a high-res model as-is, the hands, feet, spine and clavicle points all pull into the dummyroot)

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 5:09 pm
by commanderawesome
Maybe you could try following Ande's tutorial using a low res model as the base skeleton.

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 5:20 pm
by AceMastermind
I haven't seen anyone envelope high res geometry to the low1 skeleton, people usually just call the same high res msh in the GeometryLowRes property too because SWBF2 doesn't throw a fit, but the process is always the same for anything skinned.

If you want a true low1 msh, run the Polygon Reduction tool on the high res mesh
Import a low1 skeleton
Envelope the low res mesh to the low1 skeleton
Export

The low1 msh doesn't have to be perfect, it'll only be seen from a distance anyway.

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 5:27 pm
by giftheck
I've seen Deviss use the high res mesh as a low res mesh before - his ATRT driver includes a low1 that is "mapped" to the low1 skeleton (though from what I can tell all he really did was render it so that no points were weighted to bones that aren't in the low1 skeleton). I guess that's the way to go for what I'm after.

Unfortunately seeing lowres from a distance is not the case in SWBF as the poly count to trigger lowres switchout appears to be lower. It seems to be something that was upped in SWBF2.

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 5:46 pm
by AceMastermind
1. There is no other way to do it, you can't envelope to something that doesn't exist. Import a low1 msh from the assets to examine the envelope and you will see how its done.

2. Lowres geometry is only ever used at distance from the camera. Run the Polygon Reduction tool on the high res mesh to get the required poly count.

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 6:00 pm
by giftheck
AceMastermind wrote:2. Lowres geometry is only ever used at distance from the camera. Run the Polygon Reduction tool on the high res mesh to get the required poly count.
This does not appear to be the case in the first game as low res will trigger with any units near yours if the unit you're using has what the engine would consider to be too many triangles. This is what I'm trying to say: I want to remedy this situation. As we don't have source code the only feasible way of doing this is through the models (unless somebody makes a discoery on how to alter the code to prevent low res change at close range - not likely seeing as nobody seems willing to crack into the game engine of either game).

In other words, I'm trying to compensate for a fault the first game has with a fix with an answer that isn't 'port the mod to SWBF2'. I tested a custom lowres with my new Stormie mesh and for the most part it works (just need to fix a point or two which are still mapped to bones that don't exist in the low1 skeleton)

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 7:12 pm
by AceMastermind
The only way around the game engine limitations without modifying it is to just satisfy the requirements, lower the poly count of all your units.

ggctuk wrote:I've seen Deviss use the high res mesh as a low res mesh before - his ATRT driver includes a low1 that is "mapped" to the low1 skeleton...
Which AT-RT driver are you referring to?
I checked all 3 releases from this thread and only the "Improved AT-RT Driver" has a low1 msh but none of them use a low1 skeleton.

212nd AT-RT Driver 1.0
DEV-ICE AT-RT Driver Full 3.5
Improved AT-RT Driver

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Mon Jun 08, 2015 7:56 pm
by MileHighGuy
ggctuk wrote:I'm already aware of this program and it does state that the method it uses is a hack that might not be suitable for all models. What I want to know is if it's possible in Mod Tool. I don't know if it's a simple matter of remapping points to bones that exist exclusively in the lowres skeleton (I've noticed that if you attempt to use a high-res model as-is, the hands, feet, spine and clavicle points all pull into the dummyroot)
As long as you're using the human skeleton (even if you change the basepose rotations a bit), the SchMEe tool should work. I used that when I converted the SWBF3 scout trooper, and also in my BF1 "graphics improvement" mod. It is the easiest way by far. Other than that you could look into GATOR.

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Tue Jun 09, 2015 2:47 am
by giftheck
AceMastermind wrote:The only way around the game engine limitations without modifyiing it is to just satisfy the requirements, lower the poly count of all your units.
Not possible for these guys without screwing the helmet mesh up (most of the rest is stock so it's already fairly low-poly):
Hidden/Spoiler:
Image
They're not even that triangle-heavy (most triangles goes to the heavy trooper at 2627). The EVO Trooper I was using prior to this had 4445 and when playing it would also cause other units to go to lowres.

I spoke to some people and it does appear the lowres trigger was 'upped' in SWBF2 but appears to be completely irrelevant to most PCs and is there for the console versions which were not as powerful. Without source code we obviously can't kill that code, but we can alleivate it. However, this works into the next thing:
AceMastermind wrote:
ggctuk wrote:I've seen Deviss use the high res mesh as a low res mesh before - his ATRT driver includes a low1 that is "mapped" to the low1 skeleton...
Which AT-RT driver are you referring to?
I checked all 3 releases from this thread and only the "Improved AT-RT Driver" has a low1 msh but none of them use a low1 skeleton.

212nd AT-RT Driver 1.0
DEV-ICE AT-RT Driver Full 3.5
Improved AT-RT Driver
Yes, it's the 'Improved AT-RT Driver" that I'm speaking of. It's practically an XSI hack. What Deviss did was he mapped the low1 unit to only the bones that appear in the lowres skeleton - so nothing mapped to bone_l_toe, bone_l_foot, bone_l_hand, bone_l_clavicle, bone_r_toe, bone_r_foot, bone_r_hand, bone_r_clavicle, bone_a_spine or bone_b_spine. And it works: no distortion to the model whatsoever and no dropout in the game.

An alternative would be to replace the low-res skeleton with the high-res skeleton in common.lvl but I'm told this messes up scaled units such as the Jawa and Ewok.

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Thu Jun 11, 2015 9:28 am
by Nedarb7
Have you tried using the SkeletonLowRes/AnimationLowRes ODF parameter?

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Thu Jun 11, 2015 3:21 pm
by giftheck
Nedarb7 wrote:Have you tried using the SkeletonLowRes/AnimationLowRes ODF parameter?
They don't quite work the same way in SWBF as they do in SWBF2. You can use SkeletonLowRes, of course, but AnimationLowRes does not exist in SWBF.

Re: "Easily" convert high-res model to use lowres skeleton

Posted: Thu Jun 11, 2015 3:50 pm
by Nedarb7
The two are practically the same (if not they are...) I just tested this for SWBF2, and considering how similar the two games are, I believe it should work in SWBF1. I asked if you had tried using SkeletonLowRes (since that's all SWBF1 has I'm not mentioning Anim), my theory was that you would be able to use that parameter to use the high res skeleton for lowres. The results were as I had expected, high res models using low res animations.

EDIT
Turns out it makes the animations stuck in lowres all the time, finding a way around it.

EDIT2
So far the best I could get was using a new skeleton that contained the necessary animations from the high res.