Jump to content

Main menu hangar


Einherjer

Recommended Posts

Got my rift 2 days ago and love the new main menu hangar!

But can we change the plane inside the hangar? Would great to stand next to my BF-109 or the L-39?

Maybe a changeable model similar to the changeable menu background would be a nice gimmick ;)

 

But overall thumbs up for the great VR support!

  • Like 2
Link to comment
Share on other sites

The file you need is here

D:\DCS World OpenBeta\Scripts\DemoScenes\sceneVR.lua

 

This line is important but you may as well play with them all

scene.m = sceneAPI:addModel("su-27", 0, 2.4, 0);

 

The model names you need to use come from the EDM files which are here.

D:\DCS World OpenBeta\Bazar\World\Shapes

 

These commands are for setting the animation args - for gear down and other stuff.

scene.m:setArgument(0, 1);

 

And then you might need to tweak the heights and orientation to make it sit right. Or maybe it will look great straight away.

  • Like 2
  • Thanks 4
Link to comment
Share on other sites

We may as well make this the thread for well tweaked sceneVR.lua setups.

 

If you make a good sceneVR.lua post it to the end of this thread.

 

Update: I'm working on something special but it gonna take some time.


Edited by vicx
  • Like 3
Link to comment
Share on other sites

Here's one that will put you by a mirage!

 

package.path = package.path ..';./Scripts/DemoScenes/?.lua;'
local sceneEnvironment = require("demosceneEnvironment")

scene = {} -- ñþäà êëàäåì âñå ñîçäàííûå îáúåêòû

function loadScene(scenePtr)
sceneAPI = sceneEnvironment.getInterface(scenePtr)
sceneAPI:setUpdateFunc('sceneVRUpdate')

scene.m			= sceneAPI:addModel("m-2000c", 0, 1.7, 0);
scene.m:setArgument(0, 1); --front gear
scene.m:setArgument(1, 0.2); --front gear shocks
scene.m:setArgument(3, 1); --right gear
scene.m:setArgument(4, 0.2); --right gear shocks
scene.m:setArgument(5, 1); --left gear
scene.m:setArgument(6, 0.2); --left gear shocks
scene.m:setArgument(15, -0.2); --right aileron
scene.m:setArgument(16, -0.2); --left aileron
scene.m:setArgument(38, 0.9); --Canopy
scene.m:setArgument(50, 0.5); --Pilot



local cam_level = 1.4

scene.cam = sceneAPI:addCamera(3, cam_level , 1.5)
scene.cam:setFov(90)
scene.cam.transform:lookAtPoint(-10.0, cam_level, 5);

	
scene.flr		= sceneAPI:addModel("shelter_floor", 0,0,0);
scene.flr:drawToEnvironment(true);
scene.flr.transform:scale(2,1.5,1.5);

scene.sh		= sceneAPI:addModel("ukrytie", 0,0,0); 
scene.sh:drawToEnvironment(true);
scene.sh.transform:scale(2,2,2);

scene.cam:setActive()
end

--[0;1]
local function pingpong(length, t)
local tt = (t%length)*2/length
if tt>1 then tt = 2-tt end
return tt
end


function sceneVRUpdate(t, dt)

end




 

It's also attached as a convenient JSGME package.

VR - Mirage Garage.zip

  • Like 1
  • Thanks 2
Link to comment
Share on other sites

:thumbup:

 

I want them all!!!

 

How do you extract the data from the edm files?

 

I also could not find the Gazelle edm.

 

Perhaps a short tutorial?

If I know how, I'll make some more!

 

Thanks

  • Like 1

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Hawk, the Gazelle like MOST new playable ED and third-party aircraft will not be in the main shape library ... their place is in d:\DCS World OpenBeta\Mods\aircraft or d:\DCS World OpenBeta\CoreMods\aircraft.

 

For the most basic use you just need the name. If you don't feel like hunting down the other techniques and tools you need to do more tricky things, Just stick with that until someone makes a tutorial :)

 

I've been spending a bit of time on this (more than I planned) exploring all the options but before I make a tutorial I want to make some very good examples that show what is possible. Stay tuned.

Link to comment
Share on other sites

The Gazelle

 

Gazelle vr garage, WIP

 

I have consolidated all of my VR menu files into one down load.

 

This will save me space in the forums and make all the screens available in one place.

 

A read me is included for screens where needed.

 

See last post.

 

Have fun!


Edited by Hawkeye60

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Updated position

 

I have consolidated all of my VR menu files into one down load.

 

This will save me space in the forums and make all the screens available in one place.

 

A read me is included for screens where needed.

 

See last post.

 

Have fun!


Edited by Hawkeye60
Sorry, Wrong file

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Nice one, Hawkeye.

 

I'm still working on a scene preview function so you can reload the VR scene from inside DCS without restarting but it is taking a while because -- I have to work out how to do it :)

 

Still I have a scene to post for the new Mig-29 model.

 

-- Vics Mig29 SceneVR.lua V1 20160719
package.path = package.path ..';./Scripts/DemoScenes/?.lua;'
local sceneEnvironment = require("demosceneEnvironment")
scene = {}

function generateFlightTrajectory(model, speed, targetOffset, radius, offset, setHeight)
   -- Still tweaking
end

function loadScene(scenePtr)
   sceneAPI = sceneEnvironment.getInterface(scenePtr);
   sceneAPI:setUpdateFunc('mainThemeSceneUpdate');
   sceneAPI:setSky(true);

   scene.flr = sceneAPI:addModel("shelter_floor", 0, 0, 0);
   scene.flr.transform:scale(0.1, 0.1, 0.1);
   scene.flr:drawToEnvironment(true);
   scene.flr.transform:setPosition(0, 0, 0);
   scene.flr.transform:setOrient(0, 60, 0);
  
   scene.farp = sceneAPI:addModel("mig-29", 0, 0, 0);
   scene.farp:drawToEnvironment(true);
   scene.farp.transform:rotate( 0, 0, 1);
   scene.farp.transform:setPosition( -6, 1.6, 0);   
   --Front Gear
   scene.farp:setArgument(0,0.95);
   scene.farp:setArgument(1,0.2);
   scene.farp:setArgument(2,-0.3);
   --Right Gear
   scene.farp:setArgument(3,1);
   scene.farp:setArgument(4,0.2);
   --Left Gear
   scene.farp:setArgument(5,1);
   scene.farp:setArgument(6,0.2);
   --Pilot Exists
   scene.farp:setArgument(50,0) --exists
   --Canopy
   scene.farp:setArgument(38,0.9) --0 to open 0.9
   --[[
   --Pilot Head Position 
   scene.farp:setArgument(39,1) --horiz
   scene.farp:setArgument(99,0.1) --vert
   --Will watch you as you move around :D
   --Still testing the script
   ]]

   -- Adds Camera with Root position on Ground.
scene.cam = sceneAPI:addCamera(0, 0, 0);
   scene.cam.transform:scale(1, 1, 1);
   scene.cam.transform:move(0,0,-2);
   scene.cam:setFarClip(20);
   scene.cam:setActive();
   
   -- Special feature utility *coming soon*
   --scene.dummy = sceneAPI:addDummy(0,0,0);
   --scene.dummy:attachTo(scene.farp, "pilot_vis");
   --scene.cam.transform:lookAtObject(scene.dummy);   
   
end

function mainThemeSceneUpdate(t, dt)
   -- multiple camera positions with button to change position coming soon.
   -- scene.cam2:setActive()
   -- scene.cam:setActive()
end

 

 

This scene is specifically for ROOMSCALE which will might only work well for Vive (unless are a RIFT user with an unusual setup).

 

To see the scene as intended put your HMD on the ground and press the numpad '5' to reset the view so that you have a ground reference. Now when you put on your HMD you should be standing on the ground and there should be and Mig-29 over your shoulder, sitting pretty.

Vics_Mig29_SceneVR_v1.zip


Edited by vicx
  • Thanks 1
Link to comment
Share on other sites

-Open The Floor in Model Viewer.

-Choose Add Model (add Aircraft edm),

-Adjust Position of Aircraft

-Set Arguments

-Add Moddel, Select the Roof,

 

 

I've already created 2 dozen scenes w/ my Super Bug or DCS F-18C on Carrier Deck :-p

1624113870_ModelViewer2016-07-1912-42-21-12.thumb.jpg.c54ee4cfee8378759a444c432c0f7f8f.jpg


Edited by SkateZilla

Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2),

ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9)

3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs

Link to comment
Share on other sites

-Open The Floor in Model Viewer.

-Choose Add Model (add Aircraft edm),

-Adjust Position of Aircraft

-Set Arguments

-Add Moddel, Select the Roof,

 

 

I've already created 2 dozen scenes w/ my Super Bug or DCS F-18C on Carrier Deck :-p

 

 

 

 

So for Example:

Convert the M-2000C Scene LUA to:

LoadModel("Bazar/World/Shapes/shelter_floor.edm")
AddModel("Bazar/World/Shapes/ukrytie.edm")
SetArgument(0, 1); --Hanger Doors Open.
AddModel("CoreMods/Aircraft/M-2000C/Shapes/M-2000c.EDM", 00.0,1.7,0)
--LoadLivery("A-10C","184th FS Arkansas ANG, Fort Smith (FS)")
SetArgument(0, 1);
SetArgument(1, 0.2);
SetArgument(3, 1);
SetArgument(4, 0.2);
SetArgument(5, 1);
SetArgument(6, 0.2); 
SetArgument(15, -0.2);
SetArgument(16, -0.2); 
SetArgument(38, 0.9);
SetArgument(50, 1.5);

 

Paste in the End of Autoexec.lua in /Config/ModelViewer/

 

 

Though the ModelViewer wont Read the M-2000C Position, So You'd have to LeftShift, And Mouse Up/Down to bring it out of the Floor.

1486991583_ModelViewer2016-07-1914-26-30-53.thumb.jpg.3e99e4a3f8132b92725ed6e20bcb4a61.jpg


Edited by SkateZilla

Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2),

ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9)

3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs

Link to comment
Share on other sites

now if only i could remember the string to set a custom livery.

Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2),

ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9)

3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs

Link to comment
Share on other sites

 

Code I Use (BE SURE TO BACKUP YOUR ORIGINAL):

package.path = package.path ..';./Scripts/DemoScenes/?.lua;'
local sceneEnvironment = require("demosceneEnvironment")

scene = {} -- сюда кладем все созданные объекты

function loadScene(scenePtr)
sceneAPI = sceneEnvironment.getInterface(scenePtr)
sceneAPI:setUpdateFunc('sceneVRUpdate')
sceneAPI:setSky(true);

scene.m			= sceneAPI:addModel("f-18c", 0, 21.3, 0.0);
scene.m:setArgument(0, 1);
scene.m:setArgument(1, 0.7);
scene.m:setArgument(3, 1);
scene.m:setArgument(4, 0.8);
scene.m:setArgument(5, 1); 
scene.m:setArgument(6, 0.8); 
scene.m:setArgument(8, 1.0); 
scene.m:setArgument(9, 0.6); 
scene.m:setArgument(10, 0.6);
scene.m:setArgument(11, -0.4);
scene.m:setArgument(12, -0.4);
scene.m:setArgument(13, 1.0);
scene.m:setArgument(14, 1.0);
scene.m:setArgument(15, -0.5);
scene.m:setArgument(16, -0.5);
scene.m:setArgument(17, -0.8);
scene.m:setArgument(18,  0.8);
scene.m:setArgument(31,  0.1);
scene.m:setArgument(32,  0.3);
scene.m:setArgument(38, 0.9);
scene.m:setArgument(50, 0.5);
scene.m:setArgument(89, 1.0); 
scene.m:setArgument(90, 1.0); 
scene.m:setArgument(91, 1.0); 

scene.m2		= sceneAPI:addModel("f-18c", 0, 21.3, 10.0);
scene.m2:setArgument(0, 1);
scene.m2:setArgument(1, 0.7);
scene.m2:setArgument(3, 1);
scene.m2:setArgument(4, 0.8);
scene.m2:setArgument(5, 1); 
scene.m2:setArgument(6, 0.8); 
scene.m2:setArgument(8, 1.0); 
scene.m2:setArgument(9, 0.6); 
scene.m2:setArgument(10, 0.6);
scene.m2:setArgument(11, -0.4);
scene.m2:setArgument(12, -0.4);
scene.m2:setArgument(13, 1.0);
scene.m2:setArgument(14, 1.0);
scene.m2:setArgument(15, -0.5);
scene.m2:setArgument(16, -0.5);
scene.m2:setArgument(17, -0.8);
scene.m2:setArgument(18,  0.8);
scene.m2:setArgument(31,  0.1);
scene.m2:setArgument(32,  0.2);
scene.m2:setArgument(38, 0.9);
scene.m2:setArgument(50, 0.0);
scene.m2:setArgument(89, 1.0); 
scene.m2:setArgument(90, 1.0); 
scene.m2:setArgument(91, 1.0); 

scene.m3		= sceneAPI:addModel("f-18c", 5.0, 21.3, -17.0);
scene.m3.transform:rotate(0,-90.0,0.0);
scene.m3:setArgument(0, 1);
scene.m3:setArgument(1, 0.7);
scene.m3:setArgument(3, 1);
scene.m3:setArgument(4, 0.8);
scene.m3:setArgument(5, 1); 
scene.m3:setArgument(6, 0.8); 
scene.m3:setArgument(8, 1.0); 
scene.m3:setArgument(9, 0.6); 
scene.m3:setArgument(10, 0.6);
scene.m3:setArgument(11, -0.4);
scene.m3:setArgument(12, -0.4);
scene.m3:setArgument(13, 1.0);
scene.m3:setArgument(14, 1.0);
scene.m3:setArgument(15, -0.5);
scene.m3:setArgument(16, -0.5);
scene.m3:setArgument(17, -0.8);
scene.m3:setArgument(18,  0.8);
scene.m3:setArgument(31,  0.1);
scene.m3:setArgument(32,  0.1);
scene.m3:setArgument(38, 0.0);
scene.m3:setArgument(50, 0.0);
scene.m3:setArgument(89, 1.0); 
scene.m3:setArgument(90, 1.0); 
scene.m3:setArgument(91, 0.0); 

local cam_level = 21.2

scene.cam = sceneAPI:addCamera(3, cam_level , 2.5)
scene.cam:setFov(90)
scene.cam.transform:lookAtPoint(-10.0, cam_level, 5);

	
scene.flr		= sceneAPI:addModel("vinson", 20,0, -32.0);
scene.flr:drawToEnvironment(true);
--scene.flr.transform:scale(2,1.5,1.5);
scene.flr.transform:rotate(0,-90.0,0.0);

--[[
scene.sh		= sceneAPI:addModel("ukrytie", 0,0,0); 
scene.sh:drawToEnvironment(true);
scene.sh.transform:scale(2,2,2);]]

scene.cam:setActive()
end

--[0;1]
local function pingpong(length, t)
local tt = (t%length)*2/length
if tt>1 then tt = 2-tt end
return tt
end


function sceneVRUpdate(t, dt)

end




Edited by SkateZilla
  • Like 1
  • Thanks 1

Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2),

ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9)

3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs

Link to comment
Share on other sites

If you change your GUI Theme to something other than the main one where you're flying through the clouds your frame rates should go to 90 in vr.

Derek "BoxxMann" Speare

derekspearedesigns.com 25,000+ Gaming Enthusiasts Trust DSD Components to Perform!

i7-11700k 4.9g | RTX3080ti (finally!)| 64gb Ram | 2TB NVME PCIE4| Reverb G1 | CH Pro Throt/Fighterstick Pro | 4 DSD Boxes

Falcon XT/AT/3.0/4.0 | LB2 | DCS | LOMAC

Been Flight Simming Since 1988!

Useful VR settings and tips for DCS HERE

Link to comment
Share on other sites

If you change your GUI Theme to something other than the main one where you're flying through the clouds your frame rates should go to 90 in vr.

 

I Re-shot my video w/ the Main Menu Window Disable, Uploading now, lol.

Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2),

ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9)

3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs

Link to comment
Share on other sites

Skate,

Thank you for the F18!

 

She sure looks pretty.

 

Can't wait for release:thumbup:

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Mig 15bis

 

A6M2 Zero, Note: you must have Markindel's A6M2 Zero installed, found here,

 

http://www.mediafire.com/download/6t3bha335olh4ve/A6M+2+Zero.zip

 

Copy the bin,cockpit and fm folders from p51d to a6m2 Zero folder. Overwrite. Makes the Zero Flyable with P51 Cockpit.

 

Thanks Markindel!

 

Waiting for DCS WW2

 

I have consolidated all of my VR menu files into one down load.

 

This will save me space in the forums and make all the screens available in one place.

 

A read me is included for screens where needed.

 

See last post.

 

Have fun!


Edited by Hawkeye60
Update

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Very cool Skate. How did you remove the menu?

 

Also it would be cool if you could recall how to setLivery what are the right name and path to use. I have a Chinook and I want an Aussie livery on it.


Edited by vicx
Link to comment
Share on other sites

Very cool Skate. How did you remove the menu?

 

Also it would be cool if you could recall how to setLivery what are the right name and path to use. I have a Chinook and I want an Aussie livery on it.

 

Using a shortcut argument in the shortcut, I dont recommend it as it disables the menu 100% meaning you have to end process, and you cant do anything but look around,

 

but for the purpose of the video it was to usable.

 

according to the source/ED DemoScene API it should be:

scene.m.setLivery("OBJECT", "LIVERY NAME" , "FOLDER TO LIVERY")

 

However if done wrong causes the entire scene to not load,

 

And even when all 3 variables are correct it still loads the default textures.

Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2),

ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9)

3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...