Lagaffe
Resource contributor
- Messages
- 986
- Country

For the purposes of an inter-active pre-flight, I developed an interface accessible via the Toolbar (https://www.fsdeveloper.com/forum/t...ution-xml-gauge-or-html-js-ingamepanel.457162).
This interface allows me to click on a few points corresponding to camera views and move the point of view on these cameras. Everything that follows is associated with the interior model. The actual control surfaces (aileron, elevon, rudder) were moved from the Blender Exterior model into the Blender Interior model. Each surface control has a Mouse Zone defined (Ailerons, Elevator, Rudder) in order to click on it and select the action to do.
This aircraft used yet duplicated control surfaces fixed to illustrate Control Lock function.
=> All this has been validated and is functional.
When via a clickspot on the GUI, I move to a point of view, I wanted to manipulate via the mouse/scroll function :
- using WheelUp to change control surface from middle position to Max
- using WheelDown to change control surface from middle position to Min
- using LeftSingle to change the control surface to the middle position and validate the verification operation of this surface.
=> Currently, this works but not as I would like ...
I have try several codes but anything is perfect. I manage to control the surface via theses different controls but theirs movements are not maximum and seems to be limited.
I think it comes from the values or variables used but it’s a real headache !
Example for AiLERON, I have try :
- according the SDK:
- according the SDK:
The other solution to create duplicated control surfaces and specific animations for this purpose has some cons:
- add more vertex (3 control surfaces if I include Control Lock ones)
- XML code to manage visibility of real ones and dummy control surfaces.
It is also possible to create 4 dummy which are each one parent of each control surfaces and make a specific animation for theses dummies. In theses conditions, Mouse Zone should be associated with theses dummies and
in the end we would have 2 animations for each control:
- one accessible via the dummy for validation step,
- one accessible via joystick normally.
That said the solution I stumble on is quite pleasant, is closer to reality and I think it would only take a few changes in the XML codes for it to be fully validated.
Sorry, if my english is not perfect
This interface allows me to click on a few points corresponding to camera views and move the point of view on these cameras. Everything that follows is associated with the interior model. The actual control surfaces (aileron, elevon, rudder) were moved from the Blender Exterior model into the Blender Interior model. Each surface control has a Mouse Zone defined (Ailerons, Elevator, Rudder) in order to click on it and select the action to do.
This aircraft used yet duplicated control surfaces fixed to illustrate Control Lock function.
=> All this has been validated and is functional.
When via a clickspot on the GUI, I move to a point of view, I wanted to manipulate via the mouse/scroll function :
- using WheelUp to change control surface from middle position to Max
- using WheelDown to change control surface from middle position to Min
- using LeftSingle to change the control surface to the middle position and validate the verification operation of this surface.
=> Currently, this works but not as I would like ...
I have try several codes but anything is perfect. I manage to control the surface via theses different controls but theirs movements are not maximum and seems to be limited.
I think it comes from the values or variables used but it’s a real headache !
Example for AiLERON, I have try :
- according the SDK:
| AILERON POSITION | Percent aileron input left/right. | Position (-16K to 0) -16K = full left |
or<CALLBACKCODE_DEFAULT_IM>
(M:Event) 'WheelUp' scmi 0 == if{ 100 (>A:AILERON POSITION, percent) }
(M:Event) 'WheelDown' scmi 0 == if{ -100 (>A:AILERON POSITION, percent) }
(M:Event) 'LeftSingle' scmi 0 == if{ 0 (>A:AILERON POSITION, percent) 1 (>L:CHECK_AILERON) }
</CALLBACKCODE_DEFAULT_IM>
- according the SDK:
| AXIS_AILERONS_SET | [0] Position (-16383 to 16384) | Sets the aileron position. |
<CALLBACKCODE_DEFAULT_IM>
(M:Event) 'WheelUp' scmi 0 == if{ 16383 (>K:AXIS_AILERONS_SET) }
(M:Event) 'WheelDown' scmi 0 == if{ -16383 (>K:AXIS_AILERONS_SET) }
(M:Event) 'LeftSingle' scmi 0 == if{ 0 (>K:AXIS_AILERONS_SET) 1 (>L:CHECK_AILERON) }
</CALLBACKCODE_DEFAULT_IM>
The other solution to create duplicated control surfaces and specific animations for this purpose has some cons:
- add more vertex (3 control surfaces if I include Control Lock ones)
- XML code to manage visibility of real ones and dummy control surfaces.
It is also possible to create 4 dummy which are each one parent of each control surfaces and make a specific animation for theses dummies. In theses conditions, Mouse Zone should be associated with theses dummies and
in the end we would have 2 animations for each control:
- one accessible via the dummy for validation step,
- one accessible via joystick normally.
That said the solution I stumble on is quite pleasant, is closer to reality and I think it would only take a few changes in the XML codes for it to be fully validated.
Sorry, if my english is not perfect
Last edited: