Howto:Adding gun effects: Difference between revisions

Jump to navigation Jump to search
xml highlighting etc
m (Robot: Cosmetic changes)
(xml highlighting etc)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[File:Thud_gunnery.jpg|thumb|270px|The [[Republic F-105 Thunderchief|F-105]] in action.]]
[[File:Thud_gunnery.jpg|thumb|270px|The [[Republic F-105 Thunderchief|F-105]] in action.]]
With [[Flightgear]]'s increasing capabilities, '''bullet effects''' such as tracers and smoke on impact are now supported. You will need [[FlightGear 1.9.0|FlightGear version 1.9]] or later, in order to use the effects.
With [[Flightgear]]'s increasing capabilities '''gun effects''' such as tracer bullets and smoke on impact are now supported. You will need [[FlightGear 1.9.0|FlightGear version 1.9]] or later, in order to use the effects.


== Setup ==
== Setup ==
There is no default key/button binding for a trigger in FlightGear, so you will have to make your own. An obvious choice of button would be the trigger on a [[joystick]], but you can also make a keyboard binding by adding something like this to your <tt>[[$FG ROOT]]/keyboard.xml</tt> file:  
There is no default key/button binding for a trigger in FlightGear, so you will have to make your own. An obvious choice of button would be the trigger on a [[joystick]], but you can also make a keyboard binding by adding something like this to your <tt>[[$FG ROOT]]/keyboard.xml</tt> file:  


<syntaxhighlight lang="xml">
  <key n="101">
  <key n="101">
   <name>e</name>
   <name>e</name>
Line 21: Line 22:
   </mod-up>
   </mod-up>
  </key>
  </key>
</syntaxhighlight>


In the code, we have used '''e''' as the trigger. You can change it to a choice of your own but '''e''' is the standard key binding used by most aircraft in FlightGear.  
In the code, we have used the {{key press|e}} key as the trigger. You can change it to a choice of your own but {{key press|e}} is the standard key binding used by most aircraft in FlightGear.  


Joystick bindings are a bit more complex. Sample code is below, but you will want to read the wiki article on [[Joystick]]s.
Joystick bindings are a bit more complex. Sample code is below, but you may want to read the article on [[Input device|joysticks]].


See more complex/complete sample code below.
See more complex/complete sample code below.


== Adding guns and bullet effects to your Airplane ==
== Adding gun and bullet effects to your aircraft ==
Once you have a key or button binding defined to active the trigger, you'll then need to add the needed [[AI Systems#Submodels]] configuration file to your airplane's root directory, and ensure the file is activated in your *-set.xml file. The choice of tracer, smoke and impact visual models is up to you. You may also add a sound effect to your sound configuration file that activates with the trigger.
Once you have a key or button binding defined to active the trigger, you'll then need to add the needed [[AI Systems#Submodels|submodel configuration file]] to your aircraft's root directory, and ensure the file is activated in your *-set.xml file. The choice of tracer, smoke and impact visual models is up to you. You may also add a sound effect to your sound configuration file that activates with the trigger.


The standard trigger location for FlightGear is
The standard trigger location for FlightGear is
Line 44: Line 46:
In a submodel.xml file, this typically looks something like this:
In a submodel.xml file, this typically looks something like this:


<syntaxhighlight lang="xml">
     <submodel>
     <submodel>
     <name>cowl-guns-bullets</name>
     <name>cowl-guns-bullets</name>
Line 49: Line 52:
     <trigger>/controls/armament/trigger</trigger>
     <trigger>/controls/armament/trigger</trigger>
     . . .
     . . .
</syntaxhighlight>


== Aircraft already equipped with guns ==
== Aircraft already equipped with guns ==
Line 68: Line 72:
* A6M Zero - Armed version available here : [http://www.AAliveries.yolasite.com]
* A6M Zero - Armed version available here : [http://www.AAliveries.yolasite.com]
* F-15C - Armed version available above----⤴
* F-15C - Armed version available above----⤴
* JSBSim P-51D from main repository.


== Current limitations ==
== Current limitations ==
Line 88: Line 93:
The following code, which you can place in your keyboard.xml file or (if you are an aircraft designer) in your aircraft's -set.xml file in the <keyboard> section, triggers both locations, both types of armament, and works with almost all FG aircraft.
The following code, which you can place in your keyboard.xml file or (if you are an aircraft designer) in your aircraft's -set.xml file in the <keyboard> section, triggers both locations, both types of armament, and works with almost all FG aircraft.


It uses '''e''' to trigger the main armament and '''E''' to trigger the secondary:
It uses {{key press|e}} to trigger the main armament and {{key press|Shift|e}} to trigger the secondary:


<syntaxhighlight lang="xml">
       <key n="101">
       <key n="101">
         <name>e</name>
         <name>e</name>
Line 132: Line 138:
         </mod-up>
         </mod-up>
       </key>
       </key>
</syntaxhighlight>


== Sample joystick code ==
== Sample joystick code ==
Line 137: Line 144:
This sample code that can be modified/inserted into a joystick XML file uses one button to trigger the main armament and another button to trigger the secondary armament:
This sample code that can be modified/inserted into a joystick XML file uses one button to trigger the main armament and another button to trigger the secondary armament:


<syntaxhighlight lang="xml">
   <button n="0">
   <button n="0">
     <name>trigger</name>
     <name>trigger</name>
Line 175: Line 183:
     </mod-up>
     </mod-up>
   </button>
   </button>
</syntaxhighlight>
[[Category:Aircraft enhancement]]
[[Category:Howto]]

Navigation menu