Jump to content

[1.1.2] Kerbin-Side (v1.1.0) & Supplements


AlphaAsh

Recommended Posts

How do you measure draw calls, exactly? You're kinda inspiring me to pick my base mod back up.

I'd love to know too - are drawcalls measured per material, per texture, or per mesh object? I can't find documentation anywhere :|

Link to comment
Share on other sites

As far as i know each object (not unity game object but as in blender object containing meshes) creates by default 3 drawcalls, one for rendering the object mesh/meshes itself + one for textures + one for ambient light( + 2 for normals + 1 for specular map + 1 for alpha transparancy etc. if applicable) drawcalls are very cpu/gpu intensive. Much more so than polycount and texture size. So it pays to reduce each freestanding structure to as few objects as possible (each object can contain several individual meshes)

For example: create a model containing 6 seperate objects in blender/maya etc. Import into ksp with the ksp/diffuse shader in the material setup = 18 drawcalls(3 x 6)

Now join those 6 objects so they form a single object in blender etc. import into ksp the model into ksp the same way = 3 drawcalls(3 x 1)

Im not sure how this is calculated if every object uses the same material slot. Worst case is that they are multiplied as if they use different material slots. Best case is that each object ads 2 extra drawcalls on top of the 3 for the first(mesh rendering+ambient light)

A good rule of thumb seems to be to only use seperate objects is they need different texture maps/materials etc. Or if you need to animate without armature+mesh skinning

For a bit of info read bac9s blog about modeling the new ksc.

http://forum.kerbalspaceprogram.com/entries/747-The-Making-Of-New

Where he talks about the impact of drawcalls. There are also a lot of info available online

Edit: fixed some info i remember wrong after re reading bac9s blog

Edited by landeTLS
Link to comment
Share on other sites

As far as i know each object (not unity game object but as in blender object) creates by default 2 drawcalls, one for rendering the object mesh/meshes itself + one for textures( + one for normals + 1 for specular map + 1 for alpha transparancy etc. if applicable) drawcalls are very cpu/gpu intensive. Much more so than polycount and texture size. So it pays to reduce each freestanding structure to one object (can contain several individual meshes)

For a bit of info read bac9s blog about modeling the new ksc. Where he talks about the impact of drawcalls. There are also a lot of info available online)

Cheers landeTLS! Didn't realise there was drawcall info in that (awesome) dev post, i'll have to re-read it :)

Keep up the amazing work AlphaAsh! :D

Edited by Daishi
Link to comment
Share on other sites

As far as i know each object (not unity game object but as in blender object containing meshes) creates by default 2 drawcalls, one for rendering the object mesh/meshes itself + one for textures( + one for normals + 1 for specular map + 1 for alpha transparancy etc. if applicable) drawcalls are very cpu/gpu intensive. Much more so than polycount and texture size. So it pays to reduce each freestanding structure to one object (can contain several individual meshes)

For example: create a model containing 6 seperate objects in blender/maya etc. Import into ksp with the ksp/diffuse shader in the material setup = 12 drawcalls(2 x 6)

Now join those 6 objects so they form a single object in blender etc. import into ksp the model into ksp the same way = 2 drawcalls(2 x 1)

A good rule of thumb seems to be to only use seperate objects is they need different texture maps/materials etc. Or if you need to animate without armature+mesh skinning

For a bit of info read bac9s blog about modeling the new ksc.

http://forum.kerbalspaceprogram.com/entries/747-The-Making-Of-New

Where he talks about the impact of drawcalls. There are also a lot of info available online

Ah yes, that was about my understanding. The bac9 post is amazing, it's a fantastic reference. I'm sure I can optimise my models to share textures more, it'll just require sitting down and really thinking.

I wish we could use whatever method the devs use to place KSC, kerbtown is nice since there's nothing else, but the devs way should be made accessible too.

Link to comment
Share on other sites

You're kinda inspiring me to pick my base mod back up.

Always interested in contributions chap. I'll happily showcase contributions through Kerbin-Side (assuming they pass my 'quality assurance' standards - I feel entitled to do that at least). Credit and ownership of work is not a concern. You'd be a co-author with all the credit and responsibility that entails. I won't work a mod team as anything other than a co-operative. Less politics, less bull****, less arguments, less failure.

Link to comment
Share on other sites

Always interested in contributions chap. I'll happily showcase contributions through Kerbin-Side (assuming they pass my 'quality assurance' standards - I feel entitled to do that at least). Credit and ownership of work is not a concern. You'd be a co-author with all the credit and responsibility that entails. I won't work a mod team as anything other than a co-operative. Less politics, less bull****, less arguments, less failure.

Hey, that sounds good! Since you've done lots of work on avoiding the physics bug, would you mind sharing a brief overview on the relevant set up for the models, and what kind of tricounts/texture counts/texture sizes are acceptable? Kerbin city has some standards listed in the first post in the dev thread, it would cut down on the work you'd be doing when contributors send you things.

Link to comment
Share on other sites

...would you mind sharing a brief overview on the relevant set up for the models, and what kind of tricounts/texture counts/texture sizes are acceptable? Kerbin city has some standards listed in the first post in the dev thread, it would cut down on the work you'd be doing when contributors send you things.

EDIT _ See next post. Sorry moderators for power posting again. Bad habit.

Edited by AlphaAsh
Link to comment
Share on other sites

Here's a first shot at submission guidelines:

OPTIMISATION

Try to have no more than 8 materials in a model.

All meshes that share a material should be one mesh as much as is sensible. There's lots of ways to make this happen, including scripts you can attach and run in Unity. I paid $5 for one. Optimising a model in your modelling package before-hand is still advised. And even with scripts it still takes a lot of time to properly optimise a complex model. Be careful of over-optimisation - you may b0rk your meshes and colliders. Back-up before any optimisation. "Measure twice, cut once." Check the integrity of your model. Roll back if you b0rk it.

MERGING MODELS IN A UNITY SCENE

This is fiddly because of the lack of flat terrain on Kerbin but it is a really good way of creating a 'base' with more than one model. It will also make optimising even more effective. Try as much as possible to merge models into a single Unity scene. Flick back and forth between using KerbTown in KSP and Unity. Create some single material low-poly 'foundations' to mount your models on to help with merging into terrain.

TEXTURING

Unlike with part models, you don't need to use UV maps for 'statics'. You can if you want to. You can use texture atlases if you want to. The more materials you have the more likely you'll want to use a UV map or atlas. You can, however, use a single texture per material.

You do, however, want to try and re-use the textures I've already used in Kerbin-Side. I'll happy accept up to three new textures with each submission. There's no limit on how many UV maps and atlases I'll accept, as long as there's an actual benefit to them over individual material textures used in Kerbin-Side. If you use texture atlases, try sharing them over all your models as much as possible.

UV maps and texture atlases can be up to 1024x1024. Individual material textures shouldn't really be more than 128x128 unless they have a lot of important detail on them. Then 256x256 is fine. Just don't have too many of these. One 512x512 texture per model is a good limit.

I am currently switching over a lot of the textures used in Kerbin-Side to more 'Squad/Stock' -alike looking textures. Like what you see at KSC. http://www.kashcorp.co.uk/KSCTextures.zip

They're 'screenshot rips' so you can improve on them if you wish. Just share if you do :)

COLLIDERS AND TESTING

Get your models to a stage where you can actually place them in your game with KerbTown and test them. Make sure there are no graphical issues, that your geometry is sound and stable and very importantly, your colliders ALL WORK. Long edges will result in holes in the colliders. Cut the model up more. Open geometry colliders (flat ones with only two dimensions) will rarely work correctly. Close your geometry. That usually means nearly 4x more polys in your model where your faces have to be given a 'depth' but that's not such an issue with performance as you'd think.

SUBMISSION FORMAT

Include the following in a zip in a folder structure mirroring that of your development environment:

- Unity Scene.

- Materials.

- Textures. Yes, even if they're already in KerbinSide (which most of them should be).

- The model, preferably in FBX format.

- KerbTown set-up. So 'deliver' your work as an mu, with textures and a KerbTown cfg with a SINGLE instance of where you'd like your model to be on Kerbin. No off-planet stuff thanks. This is Kerbin-Side.

- Anything else I forgot in this list that you know I need.

Zips please. None of this fangled 7zzzzz or RAR! stuff, thanks. Host somewhere private, PM me a link and say something nice about me. Okay, that second part's optional.

And virus scan it your end before you upload it. I'll do the same my end.

Edited by AlphaAsh
Link to comment
Share on other sites

Can you add some kind of gallery? For example to imgur.com...

Go ahead and make one chap. Saves me a job and gives me more time for other stuff.

OP has been updated with individual releases for Arakebo Station and Coastal Extras, for those of you who are picky about what bits of KerbinSide you want. If you want the Golden Pyramid, part of Ancient Places, that's currently exclusive to the all in 1 pack on Kerbal Stuff.

Link to comment
Share on other sites

Does KerbTown need to be deleted, downloaded and installed again as well (GameData\Hubs) or is the previous version ok and it's just the KerbinSide folder that needs to be replaced?

Doh! Nevermind, I see KerbTown is included in the all-in-1 pack anyway now I've downloaded it.

Edited by Pecan
Link to comment
Share on other sites

Does KerbTown need to be deleted, downloaded and installed again as well (GameData\Hubs) or is the previous version ok and it's just the KerbinSide folder that needs to be replaced?

Doh! Nevermind, I see KerbTown is included in the all-in-1 pack anyway now I've downloaded it.

KerbTown hasn't had a new version in a while, so it doesn't matter if you overwrite it or not. KerbTown is going to get replaced for KerbinSide with a new mod my wife is working on at some point in the future, dedicated to the loading of statics without any unnescessary editing stuff players don't need. More on that when she's got something to show.

Link to comment
Share on other sites

Any news on Remote Tech configs for the dishes?

No, not really. I started on it then got fed up converting co-ordinates from KerbTown to RT2. Plus RT2's config is generated by the mod and I'm not sure whether to go with an MM config or just over-write it. Perhaps someone over at RT2 would be willing to do it?

Link to comment
Share on other sites

I built a couple of new bases. :D

Javascript is disabled. View full album

Edit: Actually, AlphaAsh, I was thinking, later on maybe have a "build it yourself pack" for those who are brave enough to, er... want to build their own bases, ie. basic runways, taxi ways and roads to add to your current set of assets. Maybe also a plain basic hanger like those on the Island Airfield outside of KSC (park aircraft in).

Edited by Eskandare
Link to comment
Share on other sites

Two questions!

1. Will the Scansat anomaly sensor pick up these new locations?

2. Do you have runway coordinates that can be used with NavUtilities ILS?

okay three...

3. If the answer is no to either of the previous two questions, is there any information you can provide so we can set this up ourselves?

Link to comment
Share on other sites

Edit: Actually, AlphaAsh, I was thinking, later on maybe have a "build it yourself pack" for those who are brave enough to, er... want to build their own bases, ie. basic runways, taxi ways and roads to add to your current set of assets. Maybe also a plain basic hanger like those on the Island Airfield outside of KSC (park aircraft in).

Love that helibase.

A 'build it yourself pack' may happen, although as you've done, it's possible to do exactly that right now with KerbTown and a good set of assets (like KerbinSide and/or Lack's KSC++).

That's good for personal use but individual assets being placed all over Kerbin with KerbTown, even well optimised ones, will eventually drag down the krakensbane. Part of optimisation in order to allow a growing number of additional bases, is the merging of assets in Unity. And that means having access to the model 'source', something I'm somewhat wary of. For now.

I'm happy to showcase a limited number of KerbTown constructed bases through Kerbin-Side but they'll have to be pulled in the future if they start impacting the krakensbane, in preference to Unity merged bases.

I've set up a Contributions Corner in the development forum for those who want to contribute at the modelling/Unity level.

Eskandare, package up the KerbTown cfgs for that heli-base for me and I'll merge them into the next release. PM me a link to a zip with the cfgs in. Thanks chap.

Link to comment
Share on other sites

Two questions!

1. Will the Scansat anomaly sensor pick up these new locations?

2. Do you have runway coordinates that can be used with NavUtilities ILS?

okay three...

3. If the answer is no to either of the previous two questions, is there any information you can provide so we can set this up ourselves?

1- SCANsat's anomaly detector does pickup statics, yes. I use it whenever I get around to updating KerbinSide's map.

2- No.

3- Launch at each location. Fire up KerbTown. Locate the instance in the existing assets list. Hit update. Grab the co-ords. Experiment with KerbTown and you'll figure it out.

EDIT - No clue as to how those co-ords then get set up in NavUtilities ILS. You'll need to talk to the mods of that mod for that.

Edited by AlphaAsh
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...