Notifications
Clear all

New Model System ".model" format description

Page 1 / 2

fluffyfreak
(@fluffyfreak)
Captain Registered
Joined: 7 years ago
Posts: 1306
Topic starter  

New Model System description

http://pioneerwiki.com/wiki/Model_system

Now a quick breakdown of the DSMiner ".model" posted in another thread.

 

So far everyone has defined the models similar to this order

  • materials
  • collisions
  • meshes

 

First up a material called DSMiner_Decal

It uses 3 textures, a diffuse (colour), specular and a glow map.

Then It specifies a few other lighting properties for the model.

material DSMiner_Decal

tex_diff DSMinerDecallDiff.png

tex_spec DSMinerDecallSpec.png

tex_glow DSMinerDecallGlow.png

diffuse 1.0 1.0 1.0

specular 1.0 1.0 1.0

shininess 80

 

Another material, same ordering, different textures.

material DSMiner_Hull

tex_diff DSMinerHullDiff.png

tex_spec DSMinerHullSpec.png

tex_glow DSMinerHullGlow.png

diffuse 1.0 1.0 1.0

specular 1.0 1.0 1.0

shininess 80

 

The collision mesh to be used.

You don't have to specify a collision mesh, but if you don't it will just use a box around the model which won't be very accurate unless your ship is the Borg cube.

collision DSMinerCollision.obj

 

The "lod" tag means that all "mesh"s listed after it will fall under this lod. "lod" is specified in pixlesize, the bigger the number, the larger on the screen the model has to be before you'll see that LOD.

lod 1000

mesh DSMinerHull.obj

mesh DSMinerDecal.obj

mesh DSMinerAnims.DAE

 

lod 200

mesh DSMinerDecalLOD1.obj

mesh DSMinerHullLOD1.obj

mesh DSMinerAnims.DAE

 

Animation definition. There's only one here and it defines the landing gear animation

anim gear_down 0 72

 

 

 

 

That's the quick breakdown, there's much more information at the link at the top and if there are any questions about getting one of these setup then please ask them here and we'll avoid derailing other threads 😀

 

Andy


Quote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

Nice one Fluffy, thanks. I knew someone who knew what they were doing would come along. I had no idea that much info existed on the wiki page. That'll teach me to pay more attention rather than concentrating just in my little corner.

 

So I assume, by reading this briefly and quickly, that in theory even a simpleton like me should be able to create/convert models in the new system rather than having 90 million variables to figure out as was the old lmr system.

 

I may even give one a bash given that yet again it's snowing and chances are I am going nowhere tomorrow. Now, if anyone has any ideas on how to keep an 8 week old boy asleep for 6-7 hours shout out.


ReplyQuote
fluffyfreak
(@fluffyfreak)
Captain Registered
Joined: 7 years ago
Posts: 1306
Topic starter  

I've only done a little animation in older versions of 3DsMAX so I don't know how to in Blender, there are usually a lot of tutorials on YouTube for stuff like that though.

 

Anyway, you do the animation you want, typically starting at frame 0 going to however many you need. You export these are part of the DAE or as a separate DAE.

 

The actual name of the animation is defined in the code, it's like a tag that the code is going to look for when the model is being loaded.

As the wiki says not all of these tags/names have been decided yet although there have been a number of suggestions and ideas based on the other discussions we've had in these threads.

 

So lets say you have you animation in the DAE file from frame 0 to 72 and you want it to be used for the "gear_down" as with the DSMiner you'd just do it as they have.

anim gear_down 0 72

 

However lets say you've got another animation in there for when we have "idle", doing nothing, animations and it's on frames 0 to 47, i.e. 48 frames... in that case you just say where the "gear_down" animation frame are instead for example:

anim gear_down 48 120

 

If you want to list multiple aniamtions, including the "idle" for example it would be

anim idle 0 47

anim gear_down 48 120

 

 

 

At least that's how I understand it at the moment 🙂

 

Andy


ReplyQuote
Fish
 Fish
(@fish)
Senior Chief Registered
Joined: 12 years ago
Posts: 65
 

So I assume, by reading this briefly and quickly, that in theory even a simpleton like me should be able to create/convert models in the new system rather than having 90 million variables to figure out as was the old lmr system.

 

put it this way my first ship the 'test run'(i wont put a link up because as the name suggests it was just a test) took me about 2 days to build, uv unwrap and texture and about a week to get in game (and thats after jpab and the others on irc helped me by doing all the animations) where as the DSMiner took me about a week to build(and animate), unwrap and texture and about 2 days to learn how to get it in to the game

so yea if someone like  me can get there head round the new model system i think anyone can

 

@fluffyfreak this is a great bit of info


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

Well, I had some spare time on my hands this morning (the boy decided to sleep in!). I actually managed to dump the ip_shuttle and got it into blender and then somehow actually managed to fudge a UV map AND got it into the latest nightly as a mod...

 

 

http://sdrv.ms/XNYkXY  <


I had to upload a pic to my skydrive as SSC would not let me upload the screenshot for some reason?

 

So if anyone with more knowledge than me can tell me how to do the UV Mapping properly in the latest version of bender I would really really appreciate it.The tutorials on the net I found are not for the latest version and it looks completely different and may as well be in Chinese.

 

Untill then I will carry on fiddling whenever possible.


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

well it's not bad for 30min work from someone who has no experience whatsoever. From there I can now create more detailed.obj's for the increase of LOD. And now I understand the import routine I can add a little more definition to the chassis.

 

Keep with it vuzz, learning is fun remember.


ReplyQuote
fluffyfreak
(@fluffyfreak)
Captain Registered
Joined: 7 years ago
Posts: 1306
Topic starter  

Good work, UV mapping is still something I'm relearning myself, and in 3DsMax rather than Blender so can't really help but the principle should hopefully be the same.

 

You're essentially choosing which faces/triangles are grouped together and projected onto a 2D plane ... aka; a texture 🙂

 

You can use helpers to do common unwrapping task like box, spherical, cylinder etc but they're just automating the unwrapping process.

 

I'm afraid that learning how to do it using Blenders interface is just going to be a bit of slogging through :/


ReplyQuote
mikehgentry
(@mikehgentry)
Senior Chief Registered
Joined: 11 years ago
Posts: 66
 

@Metamartian

 

I'm a beginner modeller, also struggling somewhat with UV unwrapping. Maybe we should write a wiki page - a beginner's guide to UV coordinates in Blender... Problem I think is there isn't a single 'right way' to do it, so hard to come up with coherent advice. That said, if we're all making spaceships (as opposed to still life fruit bowls) there's probably enough similarity between different methods to come up with some good tips.

 

Interested? Obviously if any of the seasoned modellers want to weigh in as well that'd be good - I'm just thinking sometimes it helps for beginners to identify the bits beginners are struggling with!

 

Also, I found this link somewhere in the issue tracker. Good for textures, and as far as I can tell the license is good for us to use them http://www.cgtextures.com/  (any license buffs got an opinion on that? If we're hoping our models are suitable for inclusion in core pioneer (yes, with a bit of practise 🙂 ), are those textures OK?)


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

i'm all for a collaboration, but to say i'm struggling with uv unwrapping in blender is an understatement. 🙂 lets give it a go and see what we come up with.


ReplyQuote
mikehgentry
(@mikehgentry)
Senior Chief Registered
Joined: 11 years ago
Posts: 66
 

I've made a placeholder. I'm a bit busy tonight, but hopefully over the next 2-3 days I'll dump what I've figured out about a basic method in there. In the meantime fill it up with any questions you have, if I can't answer them hopefully someone will!

 

http://pioneerwiki.com/wiki/UV_coordinates_in_Blender


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

what version of blender are you using?


ReplyQuote
mikehgentry
(@mikehgentry)
Senior Chief Registered
Joined: 11 years ago
Posts: 66
 

2.65 straight from blender.org

 

The version that comes with Debian (the Linux distribution I use) doesn't support Collada, for reasons that probably make sense to Debian... 🙂

 

edit - OK, got bored of what I'm supposed to be doing, so I wrote the outline of it. Let me know which bits need more detail. It's absolutely exasperating at first, but you soon get your head around the basics.

 

And any experts reading, please correct mercilessly 🙂


ReplyQuote
robn
 robn
(@robn)
Captain Registered
Joined: 13 years ago
Posts: 1035
 

Also, I found this link somewhere in the issue tracker. Good for textures, and as far as I can tell the license is good for us to use them http://www.cgtextures.com/  (any license buffs got an opinion on that? If we're hoping our models are suitable for inclusion in core pioneer (yes, with a bit of practise 🙂 ), are those textures OK?)

License details are here: http://www.cgtextures.com/content.php?action=license

Its not compatible with Pioneer's licensing. Most of the restrictions cover different ways you may not use the textures, which don't fit - our licensing does not limit the way that you use our code or content, provided you make your changes available to us (its more nuanced than that - read our licensing - but that's the gist).

But the kicker is:
 
 

It is NOT permitted to:
- Release the Textures or derivative products under Open Source Licences

That kind of clarifies any possible grey area 🙂

That's only the core Pioneer distribution. You're free to distribute your own mods under whatever license you choose. Of course you'll have to do your own homework on whether or not you have permission to use particular resources.


ReplyQuote
mikehgentry
(@mikehgentry)
Senior Chief Registered
Joined: 11 years ago
Posts: 66
 

So *that's* why they threw me out of law school...

Sorry about that 🙂 I did try to read it. Licenses seem to give me a special kind of mental numbness...

 

--

So, who's hiding the links to all the good textures then?


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

@mike,

 

are you using the blender ui or the maya? my version of blender is views are above each other not side by side?

 

I can't fiddle with it at the mo as I don't have it on my work latop. But will shortly!

 

EDIT - Ignore me I have sorted it.


ReplyQuote
mikehgentry
(@mikehgentry)
Senior Chief Registered
Joined: 11 years ago
Posts: 66
 

Blender's UI is unbelievably flexible, no doubt about that.

 

Had a good video on it once. Can't find it now...

 

Bloody confusing stuff.


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

yeah I ended up with about 4 windows all showing the uv map editor!

 

righto, I followed the instructions and managed to unwrap the lanner provided in the latest nightly. Excellent beginning meaning your instructions are understandable by a complete tit. Me!

 

I can't quite get the weld / snap working correctly but I'll figure it out 🙂

 

EDITL: ok figured out the weld/snap thing. talk about a ball ache doing one vertex at a time...


ReplyQuote
fluffyfreak
(@fluffyfreak)
Captain Registered
Joined: 7 years ago
Posts: 1306
Topic starter  

Ugh I detest Blender because of it's interface, a million ways to do everything, not one that works.


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

agh, made a mistake, closed blender and started again and now I can not replicate what I did before....grr

 

 

EDIT , forgot unwrap..jeez


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

ok, so a morning of banging my head against a wall, I have managed to sucessfully unwrap the lanner, texture it (somewhat crudely) and apply it back to the model and get it working in game. Go me.

 

so, onto the questions.

 

1) Using the Lanner as an example, it has a Hull_matte and a Hull_Shiny and a few other 'flappy' bits. Following your instructions Mike I can produce 2 seperate 'UV maps' for the hull types but the lanner included in the game has just one. How do you go about merging the two maps or producing one Map for ALL surfaces in the model?

 

2) while I can get blender to recognise the new textures, I can not get blender to show them on my model in Blender despite them mapping correctly in game. What steps am I missing?

 

Other than that.....yippee.

 

EDIT,

 

solved Q1. I finally wrapped my head around it....


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

Ugh I detest Blender because of it's interface, a million ways to do everything, not one that works.

yeah but for someone who has no idea about anything I'll take as many ways to do nothing as possible 🙂


ReplyQuote
mikehgentry
(@mikehgentry)
Senior Chief Registered
Joined: 11 years ago
Posts: 66
 

Ugh I detest Blender because of it's interface, a million ways to do everything, not one that works.

 

Ha! You're telling us, the people who actually *use* the thing!

 

Sadly the way with many open source projects - the last 20% of development, which polishes the UI among other things, just never gets done, because the people in a position to do it know how it works already and don't care...

 

I was virtually crying blood trying to figure out UV mapping. Even the manual has great big sections just 'not yet written'...


ReplyQuote
mikehgentry
(@mikehgentry)
Senior Chief Registered
Joined: 11 years ago
Posts: 66
 

...

 

EDITL: ok figured out the weld/snap thing. talk about a ball ache doing one vertex at a time...

 

You can do it fairly efficiently sometimes by box selecting a group of vertices. You seem to have to do a little dance first, I have no idea why...

 

1) Sync on

2) 'a' twice to select all

3) Sync off

4) 'b' for box

 

 

...2) while I can get blender to recognise the new textures, I can not get blender to show them on my model in Blender despite them mapping correctly in game. What steps am I missing?

 

 

I had this as well, and can't remember what I did. I think you need to add a 'Material' first as the basis of the texture (e.g. the material contains data about how the texture will be lit). I forgot to put that in the instructions, doing this mostly from memory (it was that painful, it's largely burned into my soul for all eternity 🙂 )

 

If you figure it out update the wiki. If not I'll have a fiddle later...

 

Glad you got it working though! 😀


ReplyQuote
Metamartian
(@metamartian)
Warrant Officer Registered
Joined: 13 years ago
Posts: 217
 

my brain in melted. I'll have another go tomorrow at work.


ReplyQuote
 Anonymous
Joined: 54 years ago
Posts: 0
 

righto, I followed the instructions and managed to unwrap the lanner provided in the latest nightly. Excellent beginning meaning your instructions are understandable by a complete tit. Me!

 

Not sure which one you're using, but there's a Blender file for the new-model Lanner in the pioneer-assets repository on github:

 

https://github.com/pioneerspacesim/pioneer-assets/tree/master/ships/lanner

 

Retexturing it would be really useful, because the LMR version has a bunch of separate textures and when I did the conversion I just took those and put them all into one big texture. We do want it to just have one texture, but the problem is that at the moment that texture is really badly used (probably 2/5 of it is just empty, which is really inefficient). If you can remap it so that it can use a single 1024x1024 texture (using the whole of the texture region) instead of using a small-ish part of a 2048x2048 texture I'd be really grateful!

 

I can't quite get the weld / snap working correctly but I'll figure it out 🙂

EDITL: ok figured out the weld/snap thing. talk about a ball ache doing one vertex at a time...

 

You probably want the "Stitch" tool, but it can be quite confusing to use. There's a bit of explanation in the Blender 2.62 Release Notes but you'll need to experiment a bit to understand it. Once you understand it it can be super useful. When I get time I'll try to write an explanation on the wiki somewhere.

 

John B


ReplyQuote
Page 1 / 2