Jump to content
7Y-Loki

Problems with custom airplane

Recommended Posts

Good day,

I am having some problems with my first custom model mod, for the moment just for learning purposes.

I am using an aircraft model but have two main issues I am unable to find a solution for.

 

EDIT2:

Main problem remaining is that the gear won't retract after takeoff.

If you start a mission flying, everything works ok, but taking off in a mission and Virtual Arsenal, the plane catches speed and after reaching 100km/h or so, it starts bobbing from one side to another, and sometimes crashes. If it manages to take off, the gear won't retract.

 

To the point:

 

When the airplane is static, it sinks into the ground up to the belly, as if it had no gear.
When it starts moving, it pops out of the ground and onto the wheels (?), and when you slow down and come to a stop, it sinks again.
Following the samples model, and other examples I have come across, the Land Contact LOD seems correct, I have the wheels defined in all LODs but the Geometry PhysX.

The solution may be something simple but it evades me...
Here's a photo:

 

inground_zpszhxejshz.jpg

 

EDIT:

-Whatever I do, the propeller rotates around the whole airplane, not on its axis. I have tried so many variations on the model.cfg that It has become quite frustrating.

I have followed Sabre's ultralight guide, Monklab's tutos, and searched the forum for answers. But the solution for everyone's problem doesn't solve mine!

At first the propeller rotated around the plane in a sphere.

Now it seems to rotate on an X axis, although it is set to use the "vrtule_axis".. I have also tried using the "rotationZ" type, but to no effect.

SOLVED BELOW

 

 

So B.I forum lords, if you have some time, give us a hand!

 

I am a complete noobie when it comes to getting stuff into the game, and my main goal is to learn, and there is nothing in spanish where to gather information from, so I will be very thankful with any help I can get.
Thank you for your time everyone!

Share this post


Link to post
Share on other sites

for the axis in your model.cfg try different rotation types, such as instead of just 'rotation' try all 3 different axis, (rotationZ, rotationX, rotationY) (You said use tried rotationZ so try all other options)

As for it sticking into the ground you can create a LOD called a 'Land Contact' which is just a single vertice (Like your axis point) for where the model touches the ground, and set it to 0 on the Z axis. Also if you have got as far for the physX adding physX to the wheels should also fix the issue, (infact Its the better way to fix it as LandContact is more fore static objects, but that was a suggestion in-case you haven't got as far as the physX LOD) and make sure its defined as a physX object in the config

Share this post


Link to post
Share on other sites

if a memorypoint/axis is not found, 0/0/0 position is used. So check for typos

  • Like 2

Share this post


Link to post
Share on other sites

Do you have AutoCenter = 0 on geometry?

  • Like 1

Share this post


Link to post
Share on other sites

First of all, thank you all for your replies.

 

for the axis in your model.cfg try different rotation types, such as instead of just 'rotation' try all 3 different axis, (rotationZ, rotationX, rotationY) (You said use tried rotationZ so try all other options)

As for it sticking into the ground you can create a LOD called a 'Land Contact' which is just a single vertice (Like your axis point) for where the model touches the ground, and set it to 0 on the Z axis. Also if you have got as far for the physX adding physX to the wheels should also fix the issue, (infact Its the better way to fix it as LandContact is more fore static objects, but that was a suggestion in-case you haven't got as far as the physX LOD) and make sure its defined as a physX object in the config

 

I have changed and used "rotation, translation, rotationX/Z/Y" to no effect. It just seems to rotate somewhere around the exhausts... (which is not the 0/0/0 position, this is near the wheels)

I have the LandContact LOD, but have three points, one for each wheel, where contact is made, as in the Plane_Samples' model.

I also have a PhysX LOD but have seen in many tutorials that the wheels can be erased, as they are generated by the game engine.

However, I first tried WITH the wheels present in the PhysX LOD and it didn't work either :/

 

Here some pics:

land_contact_zpssvvaf5cn.jpg

 

and the PhysX LOD

geometry%20PhysX_zpsjozsn41s.jpg

 

if a memorypoint/axis is not found, 0/0/0 position is used. So check for typos

 

I have double-checked and "vrtule_axis" is the name of the axis, present in the model.cfg and OB. Also, 0/0/0 is near the wheels, and doesn't seem to be the place where the propeller rotates around, more like where the exhausts are.

Here's a vid of the airplane:

 

http://vid180.photobucket.com/albums/x230/ArTaNiSS_2007/VID-20161026-WA0004_zpsv2c6sccj.mp4

 

Do you have AutoCenter = 0 on geometry?

 

I had no idea about adding this property, however, I have added it to the Geometry LOD and had no joy!

I have been modelling in Blender, and used "Save Location/Scale/Rotation" on every LOD, so everything should be properly aligned, not sure if that is what it means.

 

Again, thankyou all for your time.

I appreciate it. :cc:


EDIT: I thought I'd just post my whole model.cfg;

#define ADD_COMPONENT(component) \
	class Add##component \
	{ \
		selection = z_##component; \
		source = Add##component; \
		type = hide; \
		sourceAddress = mirror; \
		minValue = -1; \
		maxValue = 0; \
		hideValue = 0.5; \
	};

class Rotation
{
	type = "rotation";
	memory = 1;
	minValue = 0;
	maxValue = 1;
	angle0 = 0;
	angle1 = 1;
};	
	
class CfgSkeletons
{
	class Default
	{
		isDiscrete = 1;
		skeletonInherit = "";
		skeletonBones[] = {};
	};
	class Vehicle : Default {};
	class Plane: Vehicle {};
	
	class Spitfire_01_skeleton: Plane
	{
		skeletonInherit = "Plane";
		skeletonBones[] =
		{
			"horizontBank","",
			"horizont","HorizontBank",
			"flapL","",
			"flapR","",
			"elevator","",
			"rudder","",
			"aileronL","",
			"aileronR","",
			"canopy1","",
			"gear_1","",
			"gear_1_steering","gear_1",
			"gear_1_Steering2","gear_1",
			"gear_1_stabil_1","gear_1_steering",
			"wheel_1","gear_1_stabil_1",
			"gear_2","",
			"gear_2_damper","gear_2",
			"gear_2_stabil","gear_2",
			"wheel_2","gear_2_stabil",
			"gear_3","",
			"gear_3_damper","gear_3",
			"gear_3_stabil","gear_3",
			"wheel_3","gear_3_stabil",
			"rpm","",
			"kompas1","",
			"kompas2","",
			"sekundova","",
			"turn","",
			"climb","",
			"mph","",
			"fuel","",
			"vrtule","",
			"zasleh","",
			"PositionLights","",
			"CollisionLight_Red","",
			"CollisionLight_Green","",
			"CollisionLight_White",""
		};
	};
};

class CfgModels
{
	class Default
	{
		sectionsInherit="";
		sections[] = {};
		skeletonName = "";
	};
	class Vehicle: Default {};
	class Plane : Vehicle {};
	
	class spitfire: Plane
	{
		skeletonName = "Spitfire_01_skeleton";
		sections[]=
		{
			"vrtule",
			"Light_L",
			"Light_R",
			"camo1",
			"camo2"
		};

		class Animations
		{
			class Stick_Pilot_Bank
			{
				type="rotation";
				axis="stick_pilot_bank_axis";
				source="aileron";
				selection="stick_pilot";
				minValue="rad -360";
				maxValue="rad 360";
				angle0="rad -44";
				angle1="rad 44";
			};
			
			class Stick_Pilot_Dive
			{
				type="rotation";
				axis="stick_pilot_dive_axis";
				source="elevator";
				selection="stick_pilot";
				minValue="rad -360";
				maxValue="rad 360";
				angle0="rad -44";
				angle1="rad 44";
			};
			
			class vrtule
			{
				type = "rotation";
				source = "propeller";
				sourceAddress = "loop";
				memory = 1;
				selection = "vrtule";
				axis = "vrtule_axis";
				minValue = 0.0;
				maxValue = 1.0;
				minPhase = 0.0;
				maxPhase = 1.0;
				angle0 = 0; //rad 360 next try "6.2831853072"
				angle1 = "rad 360"; // rad 0
			};
			
			class FlapL//: Rotation
			{
				type = "rotation";
				source = "flap";
				selection = "FlapL";
				axis = "FlapL_axis";
				minValue = 0.000000;
				maxValue = 1.000000;
				angle1 = 0.6;
			};
			class FlapR: FlapL
			{
				selection = "FlapR";
				axis = "FlapR_axis";
				angle1 = -0.6;
			};

			class AileronL//: Rotation
			{
				type = "rotation";
				source = "aileron";
				selection = "aileronL";
				axis = "aileronL_axis";
				minValue = -1.000000;
				maxValue = 1.000000;
				angle0 = 0.436332;
				angle1 = -0.523599;
			};
			class AileronR: AileronL
			{
				selection = "aileronR";
				axis = "aileronR_axis";
				//angle0 = 0.523599;
				//angle1 = -0.436332;
			};
			class Elevator//: Rotation
			{
				type = "rotation";
				source = "elevator";
				selection = "elevator";
				axis = "elevator_axis";
				minValue = -1.000000;
				maxValue = 1.000000;
				angle0 = 0.5;
				angle1 = -0.5;
			};
			
			class Rudder//: Rotation
			{
				type = "rotation";
				source = "rudder";
				selection = "rudder";
				axis = "rudder_axis";
				minValue = -1.000000;
				maxValue = 1.000000;
				angle0 = 0.375246;
				angle1 = -0.375246;
				memory = 1;

			};
			
			class Canopy1//: Rotation
			{
				type = "translation";
				source = "clamp";
				AnimPeriod = 2;             // mandatory. in seconds. 
				selection = "canopy1";
				axis = "canopy1_axis";
				memory = 1;
				sourceAddress = "clamp";
				minValue = 0.000000;
				maxValue = 1.000000;
				offset0 = 0.000000;		//offset0 = 0.000000;
				offset1 = 0.900000;		//offset1 = 0.120000;
			};
			
			class gear_1_Steering//: Rotation
			{
				type = "rotation";
				source = "noseWheelTurn";
				selection = "gear_1_Steering";
				axis = "gear_1_damper_axis";
				memory = 1;
				sourceAddress = "clamp";
				minValue = -1.000000;
				maxValue = 1.000000;
				angle0 = 0.349066;
				angle1 = -0.349066;
			};
			class gear_1_Steering2: gear_1_Steering
			{
				selection = "gear_1_Steering2";
				axis = "gear_1_Steering2_axis";
				angle0 = 0.349066*0.7;
				angle1 = -0.349066*0.7;
			};

			class Gear_2//: Rotation
			{
				type = "rotation";
				source = "Gear";
				selection = "Gear_2";
				axis = "Gear_2_axis";
				memory = 1;
				sourceAddress = "clamp";
				minValue = 0.000000;
				maxValue = 0.700000;
				angle1 = -1.570000;
				angle0 = 0;
			};

			class Gear_2_damper//: Rotation
			{
				type = "translation";
				source = "altRadar";
				selection = "Gear_2_damper";
				axis = "Gear_2_damper_axis";
				memory = 1;
				sourceAddress = "clamp";
				minValue = 0.000000;
				maxValue = 1.000000;
				offset0 = 0.150000;
				offset1 = 0.000000;
			};

			class Gear_3//: Rotation
			{
				type = "rotation";
				source = "Gear";
				selection = "Gear_3";
				axis = "Gear_3_axis";
				memory = 1;
				sourceAddress = "clamp";
				minValue = 0.000000;
				maxValue = 0.700000;
				angle1 = 1.570000;
				angle0 = 0.00;
			};
			
			class Gear_3_damper//: Rotation
			{
				type = "translation";
				source = "altRadar";
				selection = "Gear_3_damper";
				axis = "Gear_3_damper_axis";
				memory = 1;
				sourceAddress = "clamp";
				minValue = 0.000000;
				maxValue = 1.000000;
				offset0 = -0.150000;
				offset1 = 0.000000;
			};

			class Wheel_1
			{
				type = "rotation";
				source = "wheel";
				selection = "wheel_1";
				axis = "wheel_1_axis";
				memory = 1;
				sourceAddress = "loop";
				minValue = 0.000000;
				maxValue = 1.000000;
				angle0 = 0.000000;
				angle1 = -3.141593;
			};
			class Wheel_2: Wheel_1
			{
				selection = "wheel_2";
				axis = "wheel_2_axis";
			};
			class Wheel_3: Wheel_1
			{
				selection = "wheel_3";
				axis = "wheel_3_axis";
			};
			class IndicatorRPM//: Rotation
			{
				type = "rotation";
				source = "rpm";
				selection = "rpm";
				axis = "rpm_axis";
				memory = 1;
				minValue = 0.000000;
				maxValue = 1.000000;
				angle0 = 0.000000;
				angle1 = "rad 180";
			};

			class IndicatorCompass1//: Rotation
			{
				type = "rotation";
				source = "direction";
				selection = "kompas1";
				axis = "kompas1_axis";
				memory = 1;
				minValue = "rad -180";
				maxValue = "rad 180";
				angle0 = "rad -180";
				angle1 = "rad 180";
			};
			class IndicatorCompass2: IndicatorCompass1
			{
				selection = "kompas2";
				axis = "kompas2_axis";
			};
			class HorizontBank//: Rotation
			{
				type = "rotation";
				source = "horizonBank";
				selection = "horizontBank";
				axis = "horizontBank_axis";
				minValue = "rad -360";
				maxValue = "rad +360";
				angle0 = "rad -360";
				angle1 = "rad 360";
			};
			class HorizontDive//: Rotation
			{
				type = "rotation";
				source = "horizonDive";
				selection = "horizont";
				axis = "horizontDive_axis";
				minValue = "rad -360";
				maxValue = "rad +360";
				angle0 = "rad -360";
				angle1 = "rad 360";
			};
			
			class WatchHour//: Rotation
			{
				type = "rotation";
				source = "clockHour";
				selection = "hodinova";
				axis = "minutova_axis";
				angle1 = "rad -360";
			};
			class WatchMinute: WatchHour
			{
				source = "clockMinute";
				selection = "minutova";
			};
			class WatchSecond: WatchHour
			{
				source = "clockSecond";
				selection = "sekundova";
			};
			/////////////////////////////////
			class Turn//: Rotation
			{
				type = "rotation";
				source = "rudder";
				selection = "turn";
				axis = "turn_axis";
				angle1 = "rad -360";
				angle0 = "rad 360";
			};
			/////////////////////////////////
			
			// plus start
			class IndicatorClimbPlus_1//: rotation
			{
				type = "rotation";
				source = "vertSpeed";
				selection = "climb";
				axis = "climb_axis";
				memory = 1;
				minValue=0;
				maxValue=16.667;
				angle0=0;
				angle1="rad 61";
			};
			class IndicatorClimbPlus_2: IndicatorClimbPlus_1
			{
				minValue=16.667;
				maxValue=33.334;
				angle0=0;
				angle1="rad 30.5";
			};
			class IndicatorClimbPlus_3: IndicatorClimbPlus_2
			{
				minValue=33.334;
				maxValue=100;
				angle0=0;
				angle1="rad 81";
			};
			// minus start
			class IndicatorClimbMinus_1//: rotation
			{
				type = "rotation";
				source = "vertSpeed";
				selection = "climb";
				axis = "climb_axis";
				memory = 1;
				minValue=-16.667;
				maxValue=0 ;
				angle0="rad -61";
				angle1=0;
			};
			class IndicatorClimbMinus_2: IndicatorClimbMinus_1
			{
				minValue=-33.334;
				maxValue=-16.667;
				angle0="rad -30.5";
				angle1=0;
			};
			class IndicatorClimbMinus_3: IndicatorClimbMinus_1
			{
				minValue=-100;
				maxValue=-33.334;
				angle0="rad -81";
				angle1=0;
			};
			// minus end
			class IndicatorSpeed_1_5
			{
				type = "rotation";
				source = "speed";
				selection = "mph";
				axis = "mph_axis";
				memory = 1;
				minValue = 0.00000;
				maxValue = 51.47700;
				angle0 = 0;
				angle1 = "rad 88.6";
			};
			class IndicatorSpeed_2_5: IndicatorSpeed_1_5
			{
				minValue = 51.47701;
				maxValue = 77.21600 ;
				angle1 = "rad 57.5";
			};
			class IndicatorSpeed_3_5: IndicatorSpeed_1_5
			{
				minValue = 77.21601;
				maxValue = 102.95500;
				angle1 = "rad 34";
			};
			class IndicatorSpeed_4_5: IndicatorSpeed_1_5
			{
				minValue = 102.95501;
				maxValue = 154.43200;
				angle1 = "rad 54.5";
			};
			class IndicatorSpeed_5_5: IndicatorSpeed_1_5
			{
				minValue = 154.43201;
				maxValue = 308.86400;
				angle1 = "rad 111";
			};
			class IndicatorFuel
			{
				type = "rotation";
				source = "fuel";
				selection = "fuel";
				axis = "fuel_axis";
				memory = 1;
				minValue = 0;
				maxValue = 1;
				angle0 = 0;
				angle1 = "rad 240";
			};
			
			class IndicatorAltBaro
			{
				type = "rotation";
				source = "altBaro";
				selection = "alt";
				axis="alt_axis";
				memory = 1;
				sourceAddress = "loop";
				minValue = 0;
				maxValue = 304.8;
				angle0 = 0;
				angle1 = "rad 360";
			};
			/*class zaslehROT
			{
				type="rotationZ";
				source="Muzzle_flash";            //use ammo count as phase for animation
				sourceAddress="loop";     //loop when phase out of bounds
				selection="zasleh";       //selection we want to rotate
				axis="";                  //no own axis - center of rotation is computed from selection
				centerFirstVertex=true;   //use first vertex of selection as center of rotation
				minValue=0;
				maxValue=4;               //rotation angle will be 360/4 = 90 degrees
				angle0="rad 0";
				angle1="rad 360";
			};*/
			class PositionLights
			{
				type = "hide";
				source = "collisionLights";
				selection = "PositionLights";
				minValue = 0.0;
				maxValue = 1.0;
				hideValue = 0.0;
				unHideValue = 0.5;
			};
 			class CollisionLight_Red_blinking: PositionLights
			{
				source = "CollisionLightRed_source";
				selection = "CollisionLight_Red_1_pos";
			};
 			class CollisionLight_White_blinking: PositionLights
			{
				source = "CollisionLightWhite_source";
				selection = "CollisionLight_White_1_pos";
			};
			class CollisionLight_Green_blinking: PositionLights
			{
				source = "CollisionLightGreen_source";
				selection = "CollisionLight_Green_1_pos";
			};
		};
	};
};

Share this post


Link to post
Share on other sites

Just to make clear

I had similiar problem once with my rifles bolt, i forgot to have the autoCenter = 0 in the properties window (Geometry LOD > Ctrl+1).

I haven't done any vehicles but i think this might be because of this.

 

"Regarding the GEO LOD, it is very important that the autocenter=1 property is set in the properties tab of the GEO LOD. Otherwise the ship will inmediately sink."

Thats from ship config guidelines.

 

Not sure if it's 0 or 1 in this case

  • Like 1

Share this post


Link to post
Share on other sites

^ make sure you try that because that looks pretty clear to me that it is rotating from the center of the model. 

Share this post


Link to post
Share on other sites

Interesting, I will try it now!

Excuse me, but in the properties tab, there is "Name" and "Value".

Do I put everything in Name or Value, or Name=Autocenter and Value=1...?

Share this post


Link to post
Share on other sites

Name = autoCenter, Value = 0

  • Like 1

Share this post


Link to post
Share on other sites

Name = autoCenter, Value = 0

 

So, this has solved the propeller problem! Thanks mate! :286: Although I have set the value to 1, as 0 makes it act as if the center of the model were the central point.

 

Now I just have to find how to get the plane above ground! :292:

I'm going to try and change the title of the post to just the sinking problem.

  • Like 1

Share this post


Link to post
Share on other sites

OK so this was happening to me. 

 

For airplanes-

 

You NEED wheels in your GeometryPhys LOD forget what you heard about Physics wheels for, at least airplanes.

 

In your physics LOD make sure that you have the named selection as "componentXX"; if your gear retracts, make another named selection with the gear having the same naming convention as in your visual LODs.

 

In your config.cpp use:

driveOnComponent[] = {"gearFront_L","gearFront_R","tailWheel"};

In the Array you will define your wheels as names in the GeoPhys LOD to apply a special low friction material.

 

Make sure the LandContact has verts for each wheel, that is for initial setup only.

  • Like 1

Share this post


Link to post
Share on other sites

OK so this was happening to me. 

 

For airplanes-

 

You NEED wheels in your GeometryPhys LOD forget what you heard about Physics wheels for, at least airplanes.

 

In your physics LOD make sure that you have the named selection as "componentXX"; if your gear retracts, make another named selection with the gear having the same naming convention as in your visual LODs.

 

In your config.cpp use:

driveOnComponent[] = {"gearFront_L","gearFront_R","tailWheel"};

In the Array you will define your wheels as names in the GeoPhys LOD to apply a special low friction material.

 

Make sure the LandContact has verts for each wheel, that is for initial setup only.

 

Good day, thanks for your response!

So what I have done is:

 

-Put wheels into the PhysX LOD and apart from their "component xx" selection, they are also named wheel_1/2/3 (the same in Geo LOD).

I have a point for each wheel in the LandContact LOD, also named wheel_1, wheel_2 and wheel_3 (the selections that actually touch the ground)

(Each gear consists of selections: wheel, damper and gear)

 

So I have "driveOnComponent[] = {"wheel_1","wheel_2","wheel_3"};" where wheel_1 is the tail wheel.

 

And now the plane is above ground!!  :627:

 

However, the airplane doesn't turn. This is what I have on the model.cfg

class gear_1_Steering: Rotation
{
    type = "rotation";
    source = "noseWheelTurn";
    selection = "gear_1_Steering";
    axis = "gear_1_damper_axis";
    memory = 1;
    sourceAddress = "clamp";
    minValue = -1.000000;
    maxValue = 1.000000;
    angle0 = 0.349066;
    angle1 = -0.349066;
};
class gear_1_Steering2: gear_1_Steering
{
    selection = "gear_1_Steering2";
    axis = "gear_1_Steering2_axis";
    angle0 = 0.349066*0.7;
    angle1 = -0.349066*0.7;
};

This used to work even if the wheels were underground, it would turn properly. However now with the wheel correctly above ground it doesn't work.

Don't know if I have to define anything in the config file apart from "driveOnComponent"

Or maybe change drive on component to the gears? cos I have them on the wheels..

 

The solution is close! I can sense it hehe

Thanks!

Share this post


Link to post
Share on other sites

You want the driveOnComponent to define whatever selection you have touching the ground. As for the airplane not turning, don't know? Usually for airplanes applying thrust while on the ground and applying Yaw input usually makes the airplane turn. The code in the model.cfg is only for animation of the tailwheel when applying said yaw input while the  ground.

 

If you are talking about the tailwheel not turning properly then it might be a parenting issue.

Share this post


Link to post
Share on other sites

You want the driveOnComponent to define whatever selection you have touching the ground. As for the airplane not turning, don't know? Usually for airplanes applying thrust while on the ground and applying Yaw input usually makes the airplane turn. The code in the model.cfg is only for animation of the tailwheel when applying said yaw input while the  ground.

 

If you are talking about the tailwheel not turning properly then it might be a parenting issue.

 

 

Good afternoon, thanks for your response.

Aye, I didn't explain myself very well  :unsure:

 

I meant the rear wheel doesn't turn while applying yaw on takeoff (the rudder does move). In other words, I can't taxi sideways.

I am going to check if changing the LandContact LOD vertices names does anything, bacause up to then they worked.

 

Also I have another little issue with the propeller's blur, it is always present even when the engine is off; if I don't figure it out, I'll post that particular problem here.

Thanks for your help mate!

SOLVED!

 

 

EDIT:

Well, never thought I'd see the day...

 

·Fixed the tail wheel not rotating (changed the name on LandContact vertices back to "gear_1_stabil_1","gear_2_stabil","gear_3_stabil" as it is in Samples' model.

 

·Aaaand managed to get the blur to disappear while engine was off/not full throttle.

I had the great Sabre's example model.cfg and changed it as such:

class vrtule_blur_hide
{
    type="hide";
    source="rpm";
    selection="vrtule_blur";
    unHideValue = "0.5";
};

And so I added the HideValue = 0; and erased the "" in the unHideValue, as so:

class vrtule_blur_hide
{
    type="hide";
    source="rpm";
    selection="vrtule_blur";
    hideValue = 0.0;
    unHideValue = 0.5;
};

 

Anyways, I hope this thread can help anyone else with the same issues, and thanks to everyone who has helped me out!

See you soon! (I see many more issues ahead hehe)  :239:

THANKS

Share this post


Link to post
Share on other sites

Hmm... sooner than I expected.

Now the gear is not retracting. It doesn't give me the option to do so.

Before it worked perfectly fine.

 

Any ideas?

Share this post


Link to post
Share on other sites

I have double-checked everything and in the end a suspicion arose inside me... so I tried the plane from the Editor already flying, and the gear retracting works perfectly fine.

The thing is, when I take off, the plane bumps on its wheels, and I guess that damages the gear probably?

So I suppose I will have to change the Geom and PhysX LODs and make rounder and more detailed wheels.

I will try when I can.

Thanks a lot mate.

Share this post


Link to post
Share on other sites

The Airplane class only has Hull damage nothing else. If the airplane bumps around maybe set another named selection for the wheel that rotates on the visual lod but the Geo and Physics LOD stay stationary..

Share this post


Link to post
Share on other sites

The Airplane class only has Hull damage nothing else. If the airplane bumps around maybe set another named selection for the wheel that rotates on the visual lod but the Geo and Physics LOD stay stationary..

 

Good day martinezfg11,

I have changed the wheels on the physX and Geom LOD and made them rounder, and changed the name of the wheels.

In the resolution LOD they are called wheel_1, wheel_2... and in the geom and physx LOD they are called wheels_1, wheels_2... apart from having the "ComponentXX" name too.

But the airplane still bumps a little bit on takeoff, AND gear still doesn't retract after take off.

However, it does if I start a mission in the air in the Editor... works perfectly fine  :386:

Thanks for your response!

 

EDIT: Main problem remaining is that the gear won't retract after takeoff.

If you start a mission flying, everything works ok, but taking off in a mission and Virtual Arsenal, the plane catches speed and after reaching 100km/h or so, it starts bobbing from one side to another, and sometimes crashes. If it manages to take off, the gear won't retract.

Share this post


Link to post
Share on other sites

Try renaming your Landcontact LOD to coincide with the wheels names and try again.

 

Edit: It's also weird that your airplane it bobbing around like you mentioned. The driveOnComponent should keep the wheels from having too much friction. 

  • Like 1

Share this post


Link to post
Share on other sites

Try renaming your Landcontact LOD to coincide with the wheels names and try again.

 

Edit: It's also weird that your airplane it bobbing around like you mentioned. The driveOnComponent should keep the wheels from having too much friction. 

 

Hello again,

I tried what you suggested and well... funny thing happened.

 

So, I named in the LandContact LOD wheel_1, wheel_2 and wheel_3 (same as in resolution LODs), and now the gear can be retracted; however, the front wheels seem stuck to the ground. I increase throttle, and the plane turns over forwards...

haha wtf is wrong with this plane.

 

I can retract the gear being stationary, and when I do, the plane doesn't move, it doesn't fall over or anything, as if there was an invisible box beneath it...

Gonna see if changeing some names around fixes anything.

Thanks for your help mate, I really appreciate it.

 

If you ever need help with that super Bell v280 Valor, call on me and I will help if I can

 

EDIT: Here some videos.

 

https://www.youtube.com/watch?v=fJyk_GViwF4

 

https://www.youtube.com/watch?v=MTJiHoobkyA

  • Like 1

Share this post


Link to post
Share on other sites

Man I really wanna say your problem is either in the GEOLOD, GeoPhys LOD or your driveonecomponent array. 

 

The basics: make sure you marked your wheels as "Component XX" in both geo and geophys LODS using Structure >Topology>Find Components.

 

Make sure they are closed and convex.

 

Make sure you have a selection in both geo and geophys lods with the name Wheel_1 wheel_2 etc. as named in your resolution LOD.

 

If that doesn't work then I'm all outta ideas.

Share this post


Link to post
Share on other sites

Mate, I think I'm going to open up a new thread for specificaly this gear problem, because it is not normal.

Either the gear doesn't retract or the rear wheel doesn't turn.

Or the gear works fine unless I touch ground...!

 

I have solved many other problems thanks to this thread, but goona open another just for the wheels and explaining everything a bit better.

Thanks for your help!

Share this post


Link to post
Share on other sites

my suggestion here is to check your physX LOD's names for the wheels make sure they are the same as the visual LOD wheels names, it looks to me like your wheels are retracting visually but the physX stays there

 

as for the plane tipping Im not to sure I've never done vehicles, but if there is anywhere in your config that defines things such as elevation and speed try reversing those values, it may be that the plane is set to push down instead of pull-up 

  • Like 1

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×