Bloodpass Warband Map Editor

Users who are viewing this thread

@Bloodpass:  I think he's talking about making roads and doing detail work on rivers.  This is one of the things that sucks in Thorgrim's. 

If the map editor could import / export OBJ flawlessly, that would mean that work could be done really fast in Wings, though.
 
Bloodpass said:
14 vs 7 textures - well AFAIK M&B isn't using a different texture for every terrain type.  The "forest" terrains seem to just be regular terrains with the game adding in some 3d trees, "deep ocean" seems to be just the regular ocean texture and I guess the game is doing something texture or shading wise in real time.  I haven't focused too much yet on getting an accurate (other than being able to distinguish different terrains) representation of the game's texture, because the prospect of getting it just right seems like it could be difficult. (You might have better luck than me on this front.  Especially if the engine you're using is the exact same M&B uses - no idea if that's public knowledge or not.)  I know there's a few things the game seems to do that isn't simple texture mapping, like the snow on mountains and the animated river textures.  I still have some work to do to better understand what the game is doing to render that map.

Also, I could only find the 7 textures in M&B's resource files (the actual ones the game has are much larger, and are BMP format), and I wanted to focus on actually getting something 'working', so that's what I stuck with for now.

As far as the textures go, afaik, the way the game chooses the scene for combat, is it checks the textures on the ground where your party is at, and then chooses the scene based upon that. Correct me if I'm wrong. However, if that is the case, then having some way to differentiate between the snow/snowforest textures is a must.

Bloodpass said:
Camera is pretty minimal right now, and the slow response is likely your OS keyboard repeat delay - I just confirmed that the repeat delay setting does control that initial scrolling on my pc.

In regards to this, I dunno how you control your camera in j3d but in XNA i use a check to see if the forward button is pressed, and as long as it is, every frame the camera position will be moved along a forward vector. Each frame I then do a check to see if the forward button is released, and stop if it is. It's not bound to the keyboard delay at all. Hope that helps at all.
 
As far as the textures go, afaik, the way the game chooses the scene for combat, is it checks the textures on the found where your party is at, and then chooses the scene based upon that. Correct me if I'm wrong. However, if that is the case, then having some way to differentiate between the snow/snowforest textures is a must.
The game definitely checks for the difference between forested / unforested states on a given polygon.
 
Anub arak said:
I downloaded this but i don't know how to open it!!

Extract zip to folder, run the appropriate .bat file (I think it depends on your installed version of Java, if you have 32 bit java on a 64 bit OS, it probably wants the 32 bit dll bat file). Detailed instructions are on the download page.
 
Bioxx said:
In regards to this, I dunno how you control your camera in j3d but in XNA i use a check to see if the forward button is pressed, and as long as it is, every frame the camera position will be moved along a forward vector. Each frame I then do a check to see if the forward button is released, and stop if it is. It's not bound to the keyboard delay at all. Hope that helps at all.

First - I believe you're correct about textures (so we will have to address it somehow or another).  I'm guessing you're not seeing a keyboard repeat delay because XNA is a game programming library (right?) so obviously the library would want to find a way to negate that keypress delay, and they have.  In my case I'm just using Java's standard keyboard events, which leave the delay intact (appropriate for 99% of Java apps, but not games)... but I've read about ways to work around this using timers. :smile:


SonKidd said:
Hey, I tested again. For some reason it ran OK this time. (~10% CPU usage). Sorry for the false alarm :smile:.

That's fine--it got me looking at framerates and I've definitely found room for improvement.  Those darn polygon lines (oddly enough--NOT the textured polys at all) apparently are the cause, but I'm sure it's fixable - the first shot at those was done pretty lazily with room for improvement, heh.
 
Bloodpass said:
GetAssista said:
inability to tesselate/flip individual edges.
Could you explain a little more about this and why it's something that's needed?  Not saying it isn't, but I'm not sure I fully understand what you're getting at.
For one of examples, look on the mountain ridges in vanilla map (your screenshots on page 1). They are done exactly by tesselating edges, which ran downwards from higher points. Needed to make shader display the sharp ridge, instead of default smoothing-over behaviour.
On-demand tesselation and flipping is sorely needed if you go beyond generic smooth-and-lump-in-all-places-difference-only-in-textures map.

xenoargh said:
@Bloodpass:  I think he's talking about making roads and doing detail work on rivers.  This is one of the things that sucks in Thorgrim's. 
If the map editor could import / export OBJ flawlessly, that would mean that work could be done really fast in Wings, though.
No, this is vastly inferior. I can do it already, but choose to not, cause 1) don't see how things will look ingame immediately, 2) Wings tesselation is too cumbersome for map purposes (can't put dividing vertex in an arbitrary place of the edge quickly and put all encompassing edges in place). Ideally, in a map editor tesselation can be done with one click, and I have a homemade tool to do it like that. But still the need to export/import into Thorgrim's afterwards is there
 
I hope nobody's mad at GetAssista for this :smile: --but he's convinced me that visual accuracy is going to be more important than I originally felt.

So, I looked into how difficult it'd be getting very close to M&B's actual appearance with the (productive, but rather dated) engine I'm using - and I don't really like what I've found so far.  I did get performance improved by a lot (solid 60 fps), and textures pretty darn close, but blending and (especially) shading/lighting will be more of a challenge.  (Although, still possibly do-able.) 

So given my 3d engine's age, and that it may pose challenges getting a highly accurate terrain appearance, I'm going to put my current code base on hold (with the possibility of maybe turning it into some other type of tool such as a random terrain generator or something).  Instead, after getting some advice, first I'm going to at least take a look at LWJGL.  (Basically, OpenGL with Java, so the productivity should be about as good theoretically.)  This is a modern (for open source anyway), supported 3d engine that seems more flexible than J3D.  If I can produce a proof of concept as fast as I did the first time, it'll be a good sign.  This is basically my hobby for the forseeable future, so we'll see what happens!
 
Any projection as to what kind of time-frame you are looking at for Java>LWJGL port and restructure?.
This is a good thing imo as Java is incapable of taking advantage of many GPU features *thumbs up*.
 
Bloodpass said:
So given my 3d engine's age, and that it may pose challenges getting a highly accurate terrain appearance,
MB shaders are open, written in HLSL. Will it help if you employ the map ones outrightfrom the game? They have all the shading/blending obviously
 
GetAssista said:
Bloodpass said:
So given my 3d engine's age, and that it may pose challenges getting a highly accurate terrain appearance,
MB shaders are open, written in HLSL. Will it help if you employ the map ones outrightfrom the game? They have all the shading/blending obviously

The problems he'll run into with using their shaders is twofold. First, he'll need to convert them to GLSL which is the easy part, then he just needs to make sense of the shaders. I've been experimenting with them myself  and tho I am admittedly a bit of an HLSL noob, all i can say is wow. Complicated.
 
Agreed, it'll need to be GLSL since I'm basically looking at an OpenGL lib.

I'm willing to take a look at it, but that's a new area for me as well and I've no idea where to find the MB HLSL.

No idea about a time frame yet, I'll have a better idea once I start experimenting a bit more.  Still in the process of setting up a this-time-I've-gone-too-far three 27.5" monitor setup... for "productivity". :smile:
 
GetAssista said:
MB shaders are open, written in HLSL. Will it help if you employ the map ones outrightfrom the game? They have all the shading/blending obviously

How do you know this?  After a (very) quick look all I've found is a few simple things that look like assembly, ex:

ps.1.1

tex t0
tex t1

lrp r1, v0.a, t1, t0
mul r0, r1, v0
mov r0.a, t0.a
//mov r0.a, v1.a



ps.1.1

tex t0

mul r1.rgb, t0.a, v1
// The following is for vertex colors to affect specular color but it does not work very well
//mul r1.rgb, r1,  v0
mad r0.rgb, t0, v0, r1
mov r0.a, v0.a


Never ventured into this 3d topic but it'd be good to learn.  Might be able to help Bioxx out too, who knows.
 
GetAssista said:
Bloodpass said:
How do you know this?
Every other entry in "shaders" search routine gives you the info.

Look for "_map_" in mb.fx

All I could find is a postFx.fx (which does has some shader stuff in it but no _map_) I don't see a mb.fx file anywhere.
 
I don't know if its a common error but the mapeditor crashes when it is processing face 41000
it just wont start up :sad:
 
You'll have to download it, mb.fx that is http://download2.taleworlds.com/mb_warband_shaders.zip
 
frollo0 said:
I don't know if its a common error but the mapeditor crashes when it is processing face 41000
it just wont start up :sad:

Sounds like I need some logging.  Never seen that before.  Does it throw out any error messages, just die, hang, etc?

-------

Thanks for the shaders file, will take a look.  :grin:
 
ehm yes the error message is: exception in threa "awt-eventqueue-0" java.lan.outofmemoryerror: java heap space
 
frollo0 said:
ehm yes the error message is: exception in threa "awt-eventqueue-0" java.lan.outofmemoryerror: java heap space

I see - well I'm taking a look at a port to a more up-to-date engine so we'll see how that goes, the issue should go away entirely if I switch over.  So rather than troubleshoot that I need to figure out which direction I'm going on this.
 
Back
Top Bottom