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

How to create models in XSI and other 3D applications and make them work in Battlefront 1 & 2. Post models, tips for application usage and share anything XSI, 3DMax, SketchUp, etc.

Moderator: Moderators

Post Reply
User avatar
giftheck
Droid Pilot Assassin
Droid Pilot Assassin
Posts: 2218
Joined: Mon Jan 19, 2009 5:58 pm
Projects :: Star Wars Battlefront Anniversary

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

Post 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?
User avatar
commanderawesome
Field Commander
Field Commander
Posts: 971
Joined: Tue Aug 13, 2013 11:58 pm
Projects :: Skin Changer - Warfront - Other stuff
Games I'm Playing :: SWBF SWTOR KotOR EaW
xbox live or psn: AaTc_CmdrAwesome
Location: The Universe

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

Post by commanderawesome »

Tirpider's SchMEe tool does that: http://www.swbfgamers.com/index.php?topic=6680.0
User avatar
giftheck
Droid Pilot Assassin
Droid Pilot Assassin
Posts: 2218
Joined: Mon Jan 19, 2009 5:58 pm
Projects :: Star Wars Battlefront Anniversary

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

Post 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)
User avatar
commanderawesome
Field Commander
Field Commander
Posts: 971
Joined: Tue Aug 13, 2013 11:58 pm
Projects :: Skin Changer - Warfront - Other stuff
Games I'm Playing :: SWBF SWTOR KotOR EaW
xbox live or psn: AaTc_CmdrAwesome
Location: The Universe

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

Post by commanderawesome »

Maybe you could try following Ande's tutorial using a low res model as the base skeleton.
User avatar
AceMastermind
Gametoast Staff
Gametoast Staff
Posts: 3285
Joined: Mon Aug 21, 2006 6:23 am
Contact:

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

Post 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.
User avatar
giftheck
Droid Pilot Assassin
Droid Pilot Assassin
Posts: 2218
Joined: Mon Jan 19, 2009 5:58 pm
Projects :: Star Wars Battlefront Anniversary

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

Post 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.
User avatar
AceMastermind
Gametoast Staff
Gametoast Staff
Posts: 3285
Joined: Mon Aug 21, 2006 6:23 am
Contact:

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

Post 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.
User avatar
giftheck
Droid Pilot Assassin
Droid Pilot Assassin
Posts: 2218
Joined: Mon Jan 19, 2009 5:58 pm
Projects :: Star Wars Battlefront Anniversary

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

Post 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)
User avatar
AceMastermind
Gametoast Staff
Gametoast Staff
Posts: 3285
Joined: Mon Aug 21, 2006 6:23 am
Contact:

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

Post 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
MileHighGuy
Jedi
Jedi
Posts: 1194
Joined: Fri Dec 19, 2008 7:58 pm

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

Post 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.
User avatar
giftheck
Droid Pilot Assassin
Droid Pilot Assassin
Posts: 2218
Joined: Mon Jan 19, 2009 5:58 pm
Projects :: Star Wars Battlefront Anniversary

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

Post 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.
User avatar
Nedarb7
Lieutenant General
Lieutenant General
Posts: 676
Joined: Sat Sep 22, 2012 3:41 pm

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

Post by Nedarb7 »

Have you tried using the SkeletonLowRes/AnimationLowRes ODF parameter?
User avatar
giftheck
Droid Pilot Assassin
Droid Pilot Assassin
Posts: 2218
Joined: Mon Jan 19, 2009 5:58 pm
Projects :: Star Wars Battlefront Anniversary

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

Post 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.
User avatar
Nedarb7
Lieutenant General
Lieutenant General
Posts: 676
Joined: Sat Sep 22, 2012 3:41 pm

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

Post 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.
Post Reply