• 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.

Trying to understand panels. Render the Asobo GNS430 in my plane

Messages
27
Country
spain
Hello!
Here I am back again, and after understanding how animation and manipulators works to interact with switches and buttons I made this video:


Appart from the windshield material that still is black and I have to use the blend one, I am having difficulties in putting the GNS430 in my model. I am using Blender for export but I suppose it will easy to understand what I mean with the steps I make:

1. I make the 3D plane to render the GNS430, with all the rectangle UVW map asigned to it:

2. Then I name the FS Material as: $AS430_Screen:

3. export the model and make the panel.cfg as:
[VCockpit01]
size_mm = 350,190
pixel_size = 350,190
texture = $AS430_Screen
background_color = 0,0,0
htmlgauge00=NavSystems/GPS/AS430/AS430.html, 0, 0, 350, 190

4. Make the package, but there is nothing rendered in FS2020 area.

I don't know how the gauge can be rendered in a certain part of a 3D geometry. I suppose that is because I have to give it the same name to the material as the "texture =" line in the cfg, so I did that.

Don't know how would it render it correctly (still don't render anything) when I make a not correct pixel aspect ratio to the unwrap, selecting all the 3DGeometry that is a rectangle, mapped as an squared texture, but that is the way I saw the DA62 example was done.

In the DA62 example there is an panel.xml, but not in the default Asobo_DV20, where only the panel.cfg is present, so I don't know if it is needed the xml also. I am using the Asobo_DV20 panel.cfg as example to imitate because my SF260 has more or less the same instruments as this plane.

Any help why is not appearing the GNS430 in my plane? Thanks!
 
OK!! Found the problem!!
It is the emmisive. It was black and I have to put white. In blender it is the "Emission" parameter... I put the "Emissive color" and that one was breaking the model.

9c58c6de2c0ad976fc8c1be0f951a43e.jpg

https://gyazo.com/9c58c6de2c0ad976fc8c1be0f951a43e
 
[VCockpit01]
size_mm = 350,190
pixel_size = 350,190
texture = $AS430_Screen
background_color = 0,0,0
htmlgauge00=NavSystems/GPS/AS430/AS430.html, 0, 0, 350, 190
Just FYI, you don't need to declare the texture name with a $ in front of the name. It has also been recommended to not declare dynamic textures for HTML guages but instead to just use

texture = $AS430_Screen

P.S. Lovely to see you bringing your planes to MSFS. <3
 
I see! Thanks!

I have another question. Still it is hard for me to undersand templates and how to call things to work. I am making the GNS430 as said, and now I am going to animations and functions of buttons to interact with it.
As said, I am Using the DV20 plane as example, but when I go to the files installed of the plane, inside "model" folder I see that the model.cfg is calling:
[models]
exterior=DV20.xml
interior=DV20_cockpit.xml
but I don't find those xml files anywhere in full install directory so I cannot study how the DV20 called the functions of the GNS430 that has inside.

Any help?

Thanks
 
Hmm I don't have the DV20 so instead I used the Extra 330 instead. BUT you're not really going to find much in there as they use the default names so you have to instead look here:
MSFS 2020\Official\OneStore\fs-base-aircraft-common\ModelBehaviorDefs\Asobo\GPS\AS430.xml

It takes a little bit to understand how to read Templates, but you WILL get used to it.

in your XML file you should have:
XML:
<?xml version="1.0" encoding="utf-8" ?>
<ModelInfo>
    <LODS>
        <!-- Highest LOD -->
        <!-- minimum display size in % (should be bounding sphere vertical screen size, sphere will often be slightly larger than you expect) -->
        <!-- default minSize is 0 -->
        <LOD minSize="100" ModelFile="blah_interior_lod00.gltf"/>
        <LOD minSize="10" ModelFile="blah_interior_lod01.gltf"/>
        <LOD minSize="5" ModelFile="blah_interior_lod02.gltf"/>
        <LOD minSize="4" ModelFile="blah_interior_lod03.gltf"/>
        <LOD minSize="1" ModelFile="blah_interior_lod04.gltf"/>
    </LODS>
    <Behaviors>
        ...
        <Include ModelBehaviorFile="Asobo\GPS\AS430.xml"/>
        ...
        
        
        <Component ID="AS330">
            <UseTemplate Name="ASOBO_AS330_Template">
                <FAILURE>(A:CIRCUIT AVIONICS ON, Bool)</FAILURE>
            </UseTemplate>
        </Component>
        ...
    </Behaviors>
</ModelInfo>

And in Blender you'll have something like:
1604490285808.png
 
Thanks for the reply!! it helps a lot!
In blender, I have to make all the buttons, child of the frame? and name them as you have it to match with the template name? I mean.. if I name them as you have, then it will search the names in the template? Is it important that the parent of the GPS is named as AS430_Frame_1?

in my Interior.xml I have put this:

<ModelBehaviors>
<Include Path="Asobo\GPS\AS430.xml"/>
<Component ID="AS430">
<UseTemplate Name="ASOBO_AS430_Template">
<POTENTIOMETER>1</POTENTIOMETER>
<FAILURE>(A:CIRCUIT ON:37, Bool)</FAILURE>
<CIRCUIT_ID>37</CIRCUIT_ID>
</UseTemplate>
</Component>
</ModelBehaviors>

Yours have the transponder instead (suppose a mistake. Thanks for the Extra330!!). I suppose the Failure is to switch the gps off in case of a failure. I don't understand the CIRCUIT_ID 37.. for now, but I copy it as it is in the Extra.

Thanks!
 
Hi Javier,

In 2018/2019 I followed step by step all the videos you made retracing the creation of this plane under 3DS and I took advantage of it week after week to improve.
Such a toy must render very beautifully with the MSFS rendering engine.

Bravo for the work done both for XPlane and for this new migration.
A fan of your work !

I was making the same work on my Cessna C150K Tibush but you have but you're already way ahead of me.
Tibush-2020-11-01.jpg
 
Last edited:
Beautifull cockpit!!! wow!!! incredible what comes from people that saw my videos!! :)))

I have done the instruments of the GNS430 all but one. The Range one. I don't understand how to animate it. It is supposed to be two buttons, and the animation behaves as 1 button only.. where I would like it to balance from down range to up range balancing the button over the center.
 
Circuit ID tires into your [ELECTRICAL] circuits listed in your system.cfg

Will write more shortly
 
thanks!
I saw that the range animation is only driven by one value so only way is not balance but push both buttons as one. Maybe I could use:

<Animation>
<Parameter>
<Code>
(L:GPS_RNG_UP) (P:local time,seconds) &gt; if{ 50 } els{ 0 }
</Code>
<Lag>1000</Lag>
</Parameter>
</Animation>

and

<Animation>
<Parameter>
<Code>
(L:GPS_RNG_DOWN) (P:local time,seconds) &gt; if{ 50 } els{ 0 }
</Code>
<Lag>1000</Lag>
</Parameter>
</Animation>

inside the SF260_interior.xml file to animate it balancing both buttons.
What amaze me, about mouse recognition is that when it has 2 portions of click areas (or even 3 in knobs that can be pressed), is that fs2020 auto asign the area. In X-Plane we had to define manipulator geometry to produce the interactive mouse areas. I was planning to make that also in FS2020, but that geometry needs some kind of animation to accept the anim name group to be exported and named in the xml.....
 
thanks!
I saw that the range animation is only driven by one value so only way is not balance but push both buttons as one. Maybe I could use:

<Animation>
<Parameter>
<Code>
(L:GPS_RNG_UP) (P:local time,seconds) &gt; if{ 50 } els{ 0 }
</Code>
<Lag>1000</Lag>
</Parameter>
</Animation>

and

<Animation>
<Parameter>
<Code>
(L:GPS_RNG_DOWN) (P:local time,seconds) &gt; if{ 50 } els{ 0 }
</Code>
<Lag>1000</Lag>
</Parameter>
</Animation>

inside the SF260_interior.xml file to animate it balancing both buttons.
What amaze me, about mouse recognition is that when it has 2 portions of click areas (or even 3 in knobs that can be pressed), is that fs2020 auto asign the area. In X-Plane we had to define manipulator geometry to produce the interactive mouse areas. I was planning to make that also in FS2020, but that geometry needs some kind of animation to accept the anim name group to be exported and named in the xml.....
Hmm I'll have to check how I have that setup when I get home (in the office at the moment) so not sure.

Well in X-Plane we COULD animate and declare the actual object as the maniuplator but they RECOMMENDED that you use a proxy instead :D This new system for MSFS is pretty dang powerful though!
 
Have a question.
I see that the GPS all was child of a parent called: AS430_Frame_1
How do you call that name? I mean, where do you find the name to be named correctly. If that parent "frame" geometry has to be called as AS430_Frame_index, then how I call other intruments? Now I am making the Transponder AS330 and don't know where to look for the name to call that parent name (if it is important).
I don't want you to tell me the name for that transponder. I want to know how to find the parent name of any template instrument

In the AS430.xml I find:

<Component ID="#AS430#_Frame#SUFFIX_ID#" Node="#AS430#_Frame#SUFFIX_ID#">
<UseTemplate Name="ASOBO_GT_Emissive_Gauge">
<!-- <EMISSIVE_CODE>#EMISSIVE_DEFAULT_VALUE#</EMISSIVE_CODE> -->
</UseTemplate>
</Component>

but, I find those lines burried in the middle of the xml.. so no way to know if that is a "parent" of everything....
 
It is incredible... I just find everytime stones in my path... and the problem is because the caotic way the XML are produced, because as you can put any label in the xml, there are some of them of 1 type.. and then others totally different.

I understand the way the GPS buttons where animated. I just had to go to the <ANIM_NAME> OR <NODE_ID> to find how to name the buttons. For example, the Gps menu button is in the AS430.xml:

<UseTemplate Name="ASOBO_AS430_Push_Button_Template">
<ANIM_NAME>#AS430#_Push_Menu#SUFFIX_ID#</ANIM_NAME>
<NODE_ID>#AS430#_Push_Menu#SUFFIX_ID#</NODE_ID>
<BTN_ID>MENU_Push</BTN_ID>
<TOOLTIPID>TT:COCKPIT.TOOLTIPS.AS1000_PUSH_MENU</TOOLTIPID>
</UseTemplate>

So I named (as you showed me) "AS430_Push_Menu_1"

BUT NOW I go to the AS330.xml to make the transponder animations buttons... and find that there is no <ANIM_NAME> or <NODE_ID>.. just a <BTN_ID> that if we look the AS430.xml also have one, but see that is different name convention as the anim name.. ("MENU_Push" shouldn't work in the gps animation I guess)
So If the names of animations (actions) are important in the blender file, I don't know how to name the Transponder to make it work.. because only says "1, 2, 3, 4..... ON, STBY....

It is sooooo frustrating...
 
Thanks a lot for the pictures. They helped me to understand several things, that I am going to post how to work, for people that comes with the same problems:

1. Each xml file is different. That is a PITA, because it don't help at all of a method to do things fast. As said, every xml is an investigation labor.

2. The way you call the parent of all buttons or switches of an instrument is not important. With the pictures it seems it is.. but not. The important is the display to be named correctly to make future programming with failures, electric etc...

3. The important one to be named is the 3D geometry of the button. It is the one that makes the cursor change to "hand" or whatever put in the xml <cursor> label. It is the one that is going to make the changes in every click

4. If you want to animate it, then you have to also put the correct anim name (or group anim name in MAX), that usually will be the same as the geometry one. That way you will see the animation of buttons and switches. If you don't put that name, you would be able to see the changes of the action done, but not the animation. Of course the switch button, knob, has to be animated in blender or 3Dstudio.

5. How to know the name of every 3D geometry and animation? ahhhhhh that connects with the first point. In our case because xml for me are chaotic, we have to investigate.
In the GPS for example, the MSG button, I thought that it should be named starting with AS430... so I named the transponder with AS330 (that is the name of the instrument and template), but I was wrong.
If you we go to the:

\FS2020\Official\OneStore\fs-base-aircraft-common\ModelBehaviorDefs directory
in Asobo\GPS we will find the AS430.xml that we can open it with notepad++ to click on the + or - areas to hide or show them and better understand it.
We want to understand the buttons template, so we search for it and see that there are 2 labels:

<NODE_ID>#PREFIX#_#BTN_ID#</NODE_ID>
<ANIM_NAME>#PREFIX#_#BTN_ID#</ANIM_NAME>

That is the name we have to put... BUT what is the Prefix and the BTN_ID?
We search for the <PREFIX> label, and we see:

<PREFIX>#AS430#</PREFIX>

which don't say too much to me, but we look for <AS430> label and we find:

<AS430>AS430</AS430>

So the Prefix is AS430, now we have to search for the BTN_ID... in this case we want the MSG one, and looking for MSG we find:

<ANIM_NAME>#AS430#_Push_Message#SUFFIX_ID#</ANIM_NAME>
<NODE_ID>#AS430#_Push_Message#SUFFIX_ID#</NODE_ID>

that is the name the animation and geometry has to have. Both the same... so....

#AS430# = AS430
#SUFFIX_ID is the number order of instruments we have. If we have a single GNS430 then it will 1. The second one will be 2.

So in our case the MSG button anim and geometry name has to be: AS430_Push_Message_1 and anything different from that will make it not work.

SOOOOOO what happens with the Tranponder. We do open the Asobo\Transponder\AS330.xml and we see that for the ON button we have:

<UseTemplate Name="ASOBO_AS330_Push_Button_Template">
<BTN_ID>ON</BTN_ID>
<TOOLTIPID>TT:COCKPIT.TOOLTIPS.XPDR_ON</TOOLTIPID>
</UseTemplate>

so here comes the frustration. It doesn't show any <ANIM_NAME> or <NODE_ID> so we look for information in the lines on the top searching for <ANIM_NAME> and <NODE_ID> labels:

<NODE_ID>#PREFIX#_#BTN_ID##SUFFIX_ID#</NODE_ID>
<ANIM_NAME>#PREFIX#_#BTN_ID##SUFFIX_ID#</ANIM_NAME>

That are under push_button_subtemplate. So.. what is the #PREFIX#? We search Prefix and we find:

<PREFIX>#AS330#_Push</PREFIX>

Search for <AS330> and we find:

<AS330>TRANSPONDER</AS330>

and voila!! so where in the GNS430 the name started with a AS430_ I tought that the tranponder was starting with a AS330_ BUT NOT!!! the programmer that was different than the one in the GPS made it start with:

TRANSPONDER_

But in <PREFIX> We have <PREFIX>#AS330#_Push</PREFIX> so the buttons start with:

TRANSPONDER_Push

What is our BTN_ID?, we go to the first line:

<UseTemplate Name="ASOBO_AS330_Push_Button_Template">
<BTN_ID>ON</BTN_ID>
<TOOLTIPID>TT:COCKPIT.TOOLTIPS.XPDR_ON</TOOLTIPID>
</UseTemplate>

so it would continue as: TRANSPONDER_Push_ON_SUFFIX_ID
so at the end the suffix_id is the number of instrument we have. In this case, the final name of the animation and geometry would be:

TRANSPONDER_Push_ON_1

I remember one that when I was in Laminar Research, we were giving 3rd party developers some clases to develop in xplane. The all came from FSX. They told me that xplane was very complicated..... HAHAHAHAHAHAHA
they don't know what they were saying.
 
Back
Top