• Which the release of FS2020 we see an explosition of activity on the forun and of course we are very happy to see this. But having all questions about FS2020 in one forum becomes a bit messy. So therefore we would like to ask you all to use the following guidelines when posting your questions:

    • Tag FS2020 specific questions with the MSFS2020 tag.
    • Questions about making 3D assets can be posted in the 3D asset design forum. Either post them in the subforum of the modelling tool you use or in the general forum if they are general.
    • Questions about aircraft design can be posted in the Aircraft design forum
    • Questions about airport design can be posted in the FS2020 airport design forum. Once airport development tools have been updated for FS2020 you can post tool speciifc questions in the subforums of those tools as well of course.
    • Questions about terrain design can be posted in the FS2020 terrain design forum.
    • Questions about SimConnect can be posted in the SimConnect forum.

    Any other question that is not specific to an aspect of development or tool can be posted in the General chat forum.

    By following these guidelines we make sure that the forums remain easy to read for everybody and also that the right people can find your post to answer it.

TheOptimists' project thread.

Messages
70
Hello everyone.

I'm developing my first freeware project, which of course means I'm gradually working my way through all of the problems that a newbie faces. Since I anticipate a HUGE number of questions and problems, I thought I'd create a specific thread rather than starting a new topic every time I have an issue.

For those who are just starting off, I imagine many of the questions in this thread will correspond to problems you may have.

Every time I have a new question I shall post it in here! Incidentally, nobody is allowed to see my project until it is finished. I don't want people to be expecting the project on a time scale, and I don't want people's expectations to be high, or even for them to have any expectations at all. Anyway, let's get the ball rolling.

1. How many faces/vertices is acceptable on a external model/VC for 'good' performance?

Firstly, I recognize, that 'good performance' is difficult to define. However just a ballpark figure. You all have vast experience modelling so you must know at what point you start to struggle. I want an aircraft that people can use. At the moment I have an EXTREMELY basic fuselage, with no wings, prop, windows, gear etc etc and have already burned up 700 faces and vertices. Is that far too many?

How many for good performance in the VC?

2. How do I ensure 'smoothness' of the model?

Many aircraft out there have perfectly smooth skin. I am using the cylinder method of fuselage modelling, and feel like I'm using too many segments. However, this seems the only way I can get it smooth. Even at 30+ strips (forgotten the term - lenthways divides) I can still notice the angles. Does FSX add any extra smoothing? How many segments in the cyclinder do you all use? (p.s. smoothing is definately on).

Edit: Hmm. I wonder if spline modelling would be more suitable. The join from the wings to the fuselage is extremely smooth and curved so perhaps that's the best way.

3. Can I model absolutely everything before texturing?

My model is likely to change over time, so I am hesitant to texture as I go along. I might finish the VC then realise the external needs an adaptation etc. I would like to model the entire aircraft, THEN texture it. Can anyone anticipate any problems?

4. If I model 'gauge holders' in the VC, am I right in saying that my custom gauges can just be 'projected on to these? At this stage of the modelling do I have to have any considerations regarding gauges?



5. Can anyone point me in the direction of good wing/fuselage joining tutorials?


Thank you for your help in advance!
 
Last edited:
ime working on my first model also, read the fs sdk a hundred times,it starts
to make sense at the 89 read..one thing that keeps me going, is to export the model to fsx for viewing and trouble shooting...build something , export,view....do somemore,export,view, troubleshoot..solve each problem as it arrises...building the complete model, then attempting to export will cause
consternation in the extreme...i keep all my components seperate,and have a test build seperate...and various backups..

the gmax bible is very usefull...try amazon...this site has saved me from complete confusion on many occassions...

ive just exported a part build test,,,oh no, degenerate polys in my nose cone,
the cone point turned out to have 28 uncallapsed verts at its apex...oops...
see image if it loads ...jim...perseverance furthers...
 
Last edited:
1. How many faces/vertices is acceptable on a external model/VC for 'good' performance?

That is really very difficult to quantify, without knowing what you're going to model. Most of my external corporate jet models are ~20k to 38k tri-polys. Interior models are up to 30k tri-polys.
2. How do I ensure 'smoothness' of the model?
That really depends a lot on how large the diameter of the fuselage is. Smaller diameter fuses are typically around 36 segments, larger fuses up to 48 segments.

3. Can I model absolutely everything before texturing?

Can you? Of course. Should you is another question altogether. I do not recommend such a practice. Even if all you have are some basic "clothes" on your project, it really helps to evaluate your mesh smoothing, and detect any rogue vertices than can warp the mesh's normals.

Aside from which, you really should begin laying out your "raw mesh" onto templates as soon as possible, with the aim being as high a resolution as possible, and trying to minimize the number of texture sheets.

The real key to optimized performance in FSX is draw calls. Every texture sheet basically equals one draw call. Keeping as much of the related parts on a single sheet can really make a huge difference in the final outcome.

4. If I model 'gauge holders' in the VC, am I right in saying that my custom gauges can just be 'projected on to these? At this stage of the modelling do I have to have any considerations regarding gauges?

No. Until you actually begin to do the interior model, don't worry about 'em. You will have more than enough to keep you busy for a long time...
 
Right then! Something to be getting on with.

It's only a single seater fighter, so I should be able to keep the poly count fairly low. If I'm around 20,000 I'll be happy. I guess I'll be going for the 36 segments(ish) although I'm going to give it a go with splines tomorrow.

JetWelder I have no idea how to export into FSX, so I reckon figuring that out is my next step. I'm also slightly unsure as how to position the model in Gmax - i.e. where the 0,0,0 point is. Am I right in saying that you want the 0,0,0 coordinate to correspond to the COG as much as possible? But then I imagine you want the wheels to be 'just in contact' with the 'floor' in Gmax?
 
Hi,

Sorry to spoil the fun a little bit, but I would prefer that you create a new thread for each specific question. There are two good reasons for that:

  1. Having a thread with a clear and descriptive title will make sure you get the right answer quicker
  2. By having a thread per topic it is easier for other people with similar problems to find the discussion

And threads are for free, so don't feel bad about using many of them :D. Thanks,
 
Great thread nevertheless. Some questions I always wanted to ask myself. A couple of cents ...

2. How do I ensure 'smoothness' of the model?

Check this great tutorial video on smoothing by Kevin Miller aka "Gibbage":

http://www.youtube.com/watch?v=-Iswm1xKtGs&feature=related

(Also any other video tuts by Gibbage listed there.)

3. Can I model absolutely everything before texturing?

Apply your texture, using UVMapping for left/right side geometry whenever possible, NOT the Unwrap UVW edit. (This gives better control; use Shoults's formula to get the right UVW map dimensions without trial and error). After perfect left/right alignment make a clone of your part and keep in a safe place. Test/export your part, collapse the stack, make any changes. To reapply the texture, open the cloned part, and copy/paste its stack (you may have to manually reselect faces).

Edit. Shoults's formula, adapted to 1024 x 1024 sheets:

UVMapLengthWidth = 1024 * (PartsizeInGmax / PartSizeInPixels)

5. Can anyone point me in the direction of good wing/fuselage joining tutorials?

There is one by Milton Shupe in the Sim Outhouse tutorials, and one using the FFD modifier in a recent Freeflight forum thread.

Edit, here you go:

http://www.flightsimonline.com/tutorials/fusewing/index.htm

http://www.aerodynamika.com/cgi-bin/yabb/YaBB.cgi?num=1261662531
 
Last edited by a moderator:
Apply your texture, using UVMapping for left/right side geometry whenever possible, NOT the Unwrap UVW edit.

Say what? The entire purpose of the UVW Editor is to allow you to achieve precise pixel-to-vertex precision.

If you mean don't open the UVW Editor before UVW Mapping has been done, I will agree with that 100%... :cool:

...otherwise that's just wrong. :eek:

Proper UVW Mapping must be completed before using the UVW Editor, but the UVW Editor is essential to achieving the most efficient and optimized mesh layout for your texture template.
 
Last edited:
In order to explain the rationale behind my earlier suggestion let me discuss some screenshots, hoping resolution isn’t too low.

f1.jpg

Fig 1 shows a texture sheet based on a fictive part. In addition to the part’s wireframe I have a bit of lettering (mirrored for the right hand side) and six horizontal red lines @ 1px thickness (the red color doesn’t come out too well, sorry about that). It will be the alignment of these red lines that I am really interested in.

f2.jpg


In Fig. 2 I am testing the appearance of things. Using the left viewport as reference, I have added the UVW Map modifier, clicked View Align, specified 10 x 10 meters as arbitrary dimensions, added Unwrap UVW, went to Edit and adjusted object/texture fit by scaling and moving, and am reasonably satisfied with the result. Note I did not do any Mesh Select beforehand because at this point I wanted left and right hand surfaces to be covered at the same time. As you can see, alignment is good, especially at the neuralgic points near top and bottom where the red lines are stretched due to planar projection. Oh, the diamond-shaped items are omnilights which I am using to lighten the part up.

OK so far, but what we really want is the right hand texture section on the right half of the object, so I went ahead as follows (Fig. 3).

f3.jpg


What I did here (slightly unconventionally I admit) was to add a Mesh Select for the right hand side only, then copied the UVW Unwrap modifier (one can do that by right-clicking on the stack item), and pasted it (also via right-click) on top. This time editing got me as far as is shown in Fig. 3, and the result is, well, let’s call it less than perfect. Perhaps I am making some silly mistake, but do what I may, I cannot get the two halves to align as in Fig. 2. (Yes, I have tried pixel snap.)

I’d be very interested to hear whether anyone can do better. So feel free to d/l the part and the texture here:

mapping.zip


To be continued …
 
OK, here is another shot at it. Consider Fig. 4.

f4.jpg


1 – I am starting from a clean stack, UVW Map added, and View Align on active viewport (left). 2 – Click Fit, to constrain the Map to the part's dimensions. 3 -- read out the part’s long dimension, in this case it’s 2.596 (meters).

Now open the texture map in your paint program and note the pixel dimensions of the part, it’s 491.

Calculate UVW map dimensions per Shoults’s formula. (2.596 / 491) * 512 = 2.707.

f5.jpg


1 -- Specify 2.707 for both width and length. (You may have to very slightly tweak this value, but will no longer need any scaling, which might well be crucial. 2 – Mesh Select the left half. Place the texture by moving the Gizmo only. Do not scale. When satisfied, copy the stack item. 3 – Mesh Select right half. Paste the copy. Move the Gizmo vertically to cover the right hand side. Switch to Back/Front viewport, use a gigantic zoom, and do not rest until alignment is perfect. Note that a 1px line is much thicker now than 1px. You’re done, see Fig. 6. Just as good as Fig. 2, but we’ve got both halves mapped now.

f6.jpg



One more step to round the thing off (Fig. 6). Create a box, call it partname_texture_01 or some such. Move it to the same coordinates as your original part. Copy the two UVW Map modifiers to partname_texture’s stack. This is for safekeeping so to speak - use this part whenever it is necessary to reapply the texture after further mesh editing.

f7.jpg
 
I've got your sample file(s) and will get back whenever I find some time to "play." From what I've read so far, there's some mistaken assumptions about just how the UVW Editor should be used, but I'll try to address that with a mini-tutorial later.
 
1. How many faces/vertices is acceptable on a external model/VC for 'good' performance?

I don't believe in restrictions.
gmax.jpg


At the moment:
39006 vertices, 54314 faces, only four materials (DXT5)

It's running smoothly in FSX - but there are almost no instruments to be calculated. I guess it really depends on what you want to see in FS...

2. How do I ensure 'smoothness' of the model?

3. Can I model absolutely everything before texturing?[?QUOTE]

I always map and texture directly. When one part is modeled, it gets mapped (select mesh-, material-, UVW mapping- and at last UVW unwarp- modifiers) and textured. Following that way you always see what you get and you are not tempted to miss texturing a couple of parts :rolleyes:

If you need to change a part afterwards, you don't necessarily have to remap the whole object. Often it is enough to add a mesh select- and a UVW map modifier to the new part of the part to get it done.


For you and mjahn:
Please have a look at the texturing tutorial I uploaded a couple of months ago. It is not an ideal methodology, and I changed the workflow slightly by now, but it might give you an idea about the concept of the mapping process.

Cheers,
Vitus
 
I guess one can't have too many tutorials on texturing :)

Vitus, that's an interesting technique you are presenting in your tut -- working from a stack of UnwrapUVW-generated meshes -- and I am sure it produces excellent results. I'll try it sometime. UnwrapUVW has many excellent uses, it's just that I am a little doubtful about precision issues when it comes to areas where scaling and alignment are crucial, as in Airliner Cheatlines, wrap-around designs etc. These are the areas where you get repainters complaining that mismatches occur, and you can see these issues in default planes as well as professional payware. I had them in my own planes until I gave up UNwrapUVW. For the purpose of debate I will simply propose that, on the strength of the example presented above, these are all due to impressionistic UnwrapUVW scaling, and there is no other way of UVW scaling (well maybe in Max there is). Anyone wanting to avoid having to make the proverbial "ends meet" at several stages in the process should give Shoults's mathematical approach a try. At any rate, Vitus, I'd be interested in whether you can make your process work for the (admittedly specialized) little problem I presented above.
 
Actually, both your approach (a la Uncle Milton) and Vitus' approach are treating the UVW Unwrap/Edit function in an unconventional manner...

As far as I'm concerned, UVW Unwrap/Edit is the very last step in the sequence. Rather than citing a whole bunch of steps, let me simplify it thusly.

1. Use your best guess as to what objects are going to be UVW Mapped to the same texture file and process those objects accordingly.

2. UVW Map an entire object using the exact same UVW Map dimensions for every UVW Map created.

3. Keep your process easier to control by using MatIDs to identify all polys that're to be UVW Mapped together. For example, left fuse side MatID#1, right fuse side MatID#2, top of nose MatID#3, etc.

4. After double or even triple checking your MatID assignments, only then begin the UVW Mapping process, using this sequence:

a. Select by MatID#, set the Viewport accordingly (e.g., MatID#1 left fuse, use Left Viewport).

b. Add a UVW Map to the stack, click Align, set the dimensions of the UVW Map as desired. Rightclick and Copy UVW Map to the buffer for later use.

c. Add a Poly (or Mesh) Select to the stack, Select by MatID#, rightclick and Paste the UVW Map, set the Viewport, click Align. Repeat steps a through c until every polygon is UVW Mapped.

5. Only after the above is completed, then Add a Poly (or Mesh) Select to the stack, Select All polys, then Add a UVW Unwrap modifier to the stack.

6. Open the Editor and use the spinner at the bottom to display the MatID you wish to see. Lasso all mesh vertices and move them outside the bounding box temporarily.

7. Once all vertices are out of the bounding box, begin selecting by MatID related groups of vertices and move them back into the bounding box...

8. Uniform Scale only related UVW Map vertices to maintain -well- Uniform Scale, and most important of all make certain that Pixel Snap is enabled. This will guarantee that all vertices will automatically "snap" to the precise pixel locations that the Editor has calculated for the UVW Map dimensions.

9. Continue shuffling the vertices around in the Editor until you've placed everything in the most logical and useful size and order.

10. If you don't already have LithUnwrap, get it!* This will allow you to export your UVW Mapped objects to an .md3 file, load the .md3 file in LithUnwrap, then Export from LithUnwrap a pixel-perfect rendering of your mapped mesh in a hi-res, full color .bmp file.

You can then load/copy/paste the raw mesh layout to your "master PSD file" to use as a base layer for your paint kit.

Although now five years old, the mini-tutorial I posted at Freeflight Design will illustrate the above steps for clarity. I should note that I've improved and refined some of the steps since then, but the basics remain the same.

How to UVW Map Fuselage on 2 BMPS... (Read 4225 times)
http://www.aerodynamika.com/cgi-bin/yabb/YaBB.cgi?num=1126473781

For example, in FSX there is no need to use multiple textures to achieve high-resolution. One may easily achive the same results with a 2048x1024 texture now, instead of having to use two 1024x1024 textures and a Multi-Material...

*NOTA BENE - If you are using GMax, LithUnwrap provides you with a similar function as Max offers in its UVW Editor, that is the ability to generate a pixel-perfect rendering of the "raw mesh" to use as your base layer in the master PSD paint kit file(s).
 
Last edited:
thank you

this is goino to help me a lot..ime exporting test models into fsx,acc..using whatever gmax provides,lovely shiny multi coloured models..ive got to start my uv mapping soon, so all this is probably crucial. ive experimented with
some very interesting results.....ime constantly reading everything on this
site...
this is a big help to all us desperate noobs....jim
 
Vitus,

Nice Bleriot, but... Where are the GPS antennae domes? Where are the nav lights? And what about skin? Are you going to use Carbon Fiber or Fiber Glass, aluminum? Dacron?

:D


(just kidding... )
 
Hi Bill,

the Bleriot will come with 1909-state-of-the-art avionics (null), the latest control surface techniques (wing warping) and is built using modern composite materials (wood & fabric). As for the lighting, a new technology called "the sun(tm)" is used and as the avionics don't rely on radio waves at all, the plane comes without these parasite drag producing elements like aerials.

I hope that answers your questions :p
Vitus
 
Bill, many thanks for the reminder on that Freeflight Texturing tutorial and the condensed How-To list given here. I'll give it a try, at the time I thought it was too difficult.

Muttered Note to Self; this technique uses Multimaterials, but aren't MM's deprecated in FSX? Also involves separate scaling of fuselage sides, will this work to the precision I need?
 
Bill, many thanks for the reminder on that Freeflight Texturing tutorial and the condensed How-To list given here. I'll give it a try, at the time I thought it was too difficult.

Muttered Note to Self; this technique uses Multimaterials, but aren't MM's deprecated in FSX? Also involves separate scaling of fuselage sides, will this work to the precision I need?

Okay, I wrote that this technique was developed for FS8/9 modeling. Since FSX can quite happily consume 2048x1024 textures, there's no need to split the master into two separate 1024x1024 bitmaps, therefore there's no longer a (re)scaling problem to deal with.

More to the point, I've since discovered that if you begin with a 2048x1024 texture template to begin with, no (re)scaling is required when splitting the master into two separate 1024x1024 bitmaps...

No, multi-material support has not been removed. All that's required is that each sub-material be created as an FSX Material.

Note to Self: I really should make some time to update and/or replace that mini-tutorial with the more up-to-data information...
 
But ... multimaterials up the draw calls, don't they?

From a sticky in this forum:

Today I finally got around to learning about the "Named Selection Set" feature of Max/GMax...

[. . .]

3. Many times I subselect groups of polygons for UVW Mapping. While I could give each such group of polygons a unique MaterialID number, this isn't always the best way to organize such groups. Now, instead I can give each such group of polygons a unique "Named Selection Set" name, and quickly use the pick list to re-select any such group instantly

So would using named selection sets in place of multi-material IDs be a viable alternative?

Hope I'm not trying your patience ...

Manfred
 
Last edited by a moderator:
But ... multimaterials up the draw calls, don't they?
<snip>
So would using named selection sets in place of multi-material IDs be a viable alternative?

Hope I'm not trying your patience ...

Manfred

For FSX we don't need to split the artwork into multiple texture files, therefore there's no need for Multi-Materials. That is the point.

So whether you use named selection sets or MatIDs makes no real difference in the final result. ;)

But yes, using Multi-Materials for FSX will result in as many drawcalls as you have sub-materials.

I've seen FS9 models that have used up to 36 sub-materials, out of which there may have been 15 or so that actually used the same bitmap. Each sub-material using that one bitmap had slightly different "tuning" of the Blinn parameters, to change the specular level and/or color for the affected polygons.

With FSX that is not necessary, since that function is now handled by "tuning" the Specular Color bitmap!

The only viable reason I can think of for using a Multi-Material for an FSX model would be if you had a hideously complex object that would push the vertex count over the 65k-per-texture export limit.
 
Back
Top