|
| vxGameplayScene3D (vxStartGameMode sandboxStartMode, string fileToOpen="", int numberOfPlayers=1) |
| Constructor which starts the game as a Normal (Non-Networked) game.
|
|
override void | LoadContent () |
| Load graphics content for the game. Note the base.LoadContent() must be called at the top of any override function so that all systems are properly set up before loading your code. The calling order is:
|
|
override IEnumerator | LoadContentAsync () |
| Loads content as part of a Coroutine allowing the game to update frames during the loading process.
|
|
override void | UnloadContent () |
| Unload graphics content used by the game.
|
|
virtual int | GetNewEntityHandle () |
| Gets a new entity handle for this scene.
|
|
void | PreDrawSelectedItems () |
|
void | DrawSelectedItems () |
|
virtual bool | IsSurface (vxEntity3D HoveredEntity) |
|
override void | SimulationStart () |
| Starts the Sandbox.
|
|
override void | SimulationStop () |
| Stops the Sandbox.
|
|
vxPropertiesControl | CreatePropertiesControl (string name) |
| Creates a new properties control window in the right hand properties slider control.
|
|
override void | ShowPauseScreen () |
| This Method Loads the Engine Base Pause Screen (PauseMenuScreen()), but more items might be needed to be added. Override to load your own Pause Screen.
|
|
void | EnterScreenShotMode (Action callback) |
|
vxEntity3D | InstantiateItem (Type type, Vector3 position) |
| Creates a New Sandbox Item using the specified type and position.
|
|
vxEntity3D | AddSandboxItem< T > (Vector3 position) |
| Adds a sandbox item of type 'T'.
|
|
vxEntity3D | AddSandboxItem< T > (vxTransform World) |
| Adds a sandbox item of type 'T'.
|
|
virtual vxEntity3D | AddSandboxItem (string key, Matrix matrix4x4Transform) |
|
virtual vxEntity3D | AddSandboxItem (string key, vxTransform World) |
| Adds the sandbox item. Returns the new items id.
|
|
virtual vxEntity3D | GetNewEntity (string key) |
| Returns a new instance based off of the returned key. This must be overridden by an inherited class.
|
|
virtual void | DisposeOfTempPart () |
| Disposes of the Currently Created Temp Part.
|
|
virtual bool | SelectionRayCastFilter (BroadPhaseEntry entry) |
| The Ray Cast Filter for Picking.
|
|
virtual void | HandleMouseRay (Ray ray) |
|
override vxSerializableSceneBaseData | InitSaveFile () |
| Initialises the Save File. If the XML Save file uses a different type, then this can be overridden.
|
|
override vxSerializableSceneBaseData | DeserializeFile (string path) |
| Returns a Deserializes the File. If you want to use a different type to Serialise than the base 'vxSerializableScene3DData' then you must override this or it will throw an error.
|
|
override vxSaveBusyScreen | GetAsyncSaveScreen () |
| Gets the async save screen. Override this to provide a custom save screeen.
|
|
void | RefreshImportedFile (string guid, string externalPath) |
| Refreshes an imported file with the original path for the sepcified guid.
|
|
virtual void | ImportFileToolbarItem_Clicked (object sender, vxUIControlClickEventArgs e) |
| Imports the file toolbar item clicked.
|
|
| vxGameplaySceneBase (vxStartGameMode sandboxStartGameType=vxStartGameMode.GamePlay, string FilePath="", int NumberOfPlayers=1) |
| Initializes a new instance of the T:VerticesEngine.vxSceneBase class.
|
|
override void | LoadContent () |
| Load graphics content for the game.
|
|
override void | UnloadContent () |
| Unload graphics content used by the game.
|
|
void | DebugMethodCall (string method, ConsoleColor ConsoleColor=ConsoleColor.Yellow) |
|
T | GetSubSystem< T > () |
| Get the subsystem of type T
|
|
bool | TryGetSubSystem< T > (out T subSystem) |
| Tries to get the subsystem of type T
|
|
virtual vxFileInfo | GetFileInfo () |
|
virtual void | SaveFile (bool takeScreenshot, bool DoDump=false) |
| Saves the current Sandbox File.
|
|
virtual void | SaveSupportFiles () |
| Saves the support files such as as thumbnail and img. Override to add your own files.
|
|
virtual string | GetExporterInfo () |
| This is a Verbose Debug info for which game saved the file.
|
|
virtual void | AddForDisposal (vxEntity entity) |
|
virtual void | DumpFile () |
|
virtual void | PackFile () |
|
void | SpawnParticle (object key, vxGameObject emitter) |
| Spawns a new particle using the specified key from the Particle System.
|
|
virtual void | DrawBackground () |
| Draw's the background before proceeding with other drawing. This is useful for Skyboxes and backgrounds as a whole.
|
|
override void | Draw () |
| Draws the gameplay screen.
|
|
virtual void | DrawScene () |
| Draws the scene.
|
|
virtual bool | PlaySound (vxBaseScene sender, SoundEffect SoundEffect, float Volume=1, float Pitch=0) |
|
void | ExitScreen () |
| Tells the screen to go away. Unlike ScreenManager.RemoveScreen, which instantly kills the screen, this method respects the transition timings and will give the screen a chance to gradually transition off.
|
|
virtual void | Dispose () |
|
|
List< vxLightEntity > | LightItems = new List<vxLightEntity>() |
| Collection of Lights in the Level.
|
|
Space | PhyicsSimulation |
| The main BEPU Physics Simulation Space used in the game.
|
|
ModelDrawer | PhysicsDebugViewer |
| Model Drawer for debugging the phsyics system.
|
|
vxSunEntity | SunEmitter |
| Manages the Sun Class.
|
|
bool | IsEncodedIndexNeeded = true |
| Is encoded index rendertarget needed for handling selection.
|
|
string | CurrentlySelectedKey = "" |
| Current Key being used too add new entities.
|
|
vxEnumAddMode | AddMode = vxEnumAddMode.OnPlane |
|
MouseClickState | MouseClickState = MouseClickState.SelectItem |
|
CharacterControllerInput | character |
| Player.
|
|
Vector3 | PreviousIntersection = new Vector3() |
| Previous Working Plane Intersection Point.
|
|
Vector3 | OutofSight = new Vector3() |
| "Out Of Sight" Position
|
|
bool | IsRaySelectionEnabled = false |
| Should Ray Selection Handling be enabled.
|
|
bool | IsMouseOverSnapBox = false |
| The boolean for if the mouse is over snap box or not for entity placement..
|
|
bool | IsGridSnap = true |
| The is grid snap.
|
|
Vector3 | Intersection |
|
vxSlideTabControl | PropertiesTabControl |
| Main Tab Control Which Holds All Properties.
|
|
vxPropertiesControl | EntityPropertiesControl |
| The vxScrollPanel control which is used too store Entity Properties. See the GetProperties Method for examples.
|
|
ISnapbox | HoveredSnapBox |
|
vxTransform | HoveredSnapBoxWorld |
|
vxEnumTerrainEditMode | TerrainEditState = vxEnumTerrainEditMode.Sculpt |
|
int | TexturePaintType = 1 |
|
vxEnumFalloffRate | FalloffRate |
|
vxEnumAreaOfEffectMode | AreaOfEffectMode |
|
float | RayCastLength = 1000 |
| This is the length to cast a ray during picking.
|
|
Func< BroadPhaseEntry, bool > | rayCastFilter |
|
vxEnumNetworkConnectionStatus | ConnectionStatus |
|
vxEnumNetworkPlayerRole | PlayerNetworkRole = vxEnumNetworkPlayerRole.Client |
|
List< vxUtilCamera3D > | UtilCameras = new List<vxUtilCamera3D>() |
|
ContentManager | SceneContent |
| The content manager for this scene. This is unloaded at the end of the scene.
|
|
vxNetworkGameType | NetGameType = vxNetworkGameType.Local |
| The type of the game, whether its a Local game or Networked.
|
|
bool | IsStartBackground = false |
| Is this level the start background.
|
|
bool | IsGUIVisible = true |
| Should the GUI be shown?
|
|
bool | IsSceneDimmedOnCover = true |
| Whether or not to dim the scene when it's covered by another screen.
|
|
readonly int | NumberOfPlayers |
| The number of players in this Scene. This must be set in the constructor.
|
|
float | PauseAlpha |
| This is the Pause Alpha Amount based off of the poisition the screen is in terms of transitioning too a new screen.
|
|
bool | IsPausable = true |
| Gets or sets a value indicating whether this instance is pausable.
|
|
vxViewportManager | ViewportManager |
| The viewport manager.
|
|
bool | IsDumping = false |
|
vxSerializableSceneBaseData | SandBoxFile |
| File Format.
|
|
Texture2D | ThumbnailImage |
| A thumbnail of the latest run.
|
|
string | FilePath = "" |
|
string | FileName = "sandboxFile1" |
|
vxOpenSandboxFileDialog | OpenFileDialog |
| An in game Open File Dialog too access files from specific directories.
|
|
Color | BackBufferClearColor = Color.DarkMagenta |
| The color to clear the back buffer with.
|
|
bool | IsUIVisibilitySuppressed = false |
| Is the UI Visibility suppressed. This is useful for certain cases in Screen shots.
|
|
|
override void | InitialiseSubSystems () |
| Initialise your scenes subsystems here.
|
|
virtual void | RefreshWorldPropertyControl () |
|
virtual void | OnPostFileLoad () |
| This is called after the file is loaded but still during the asyc content load.
|
|
override void | InitialisePhysics () |
| This Initalises the Physics System.
|
|
override void | InitialiseCameras () |
| Initialises the cameras for this Scene. The number of Cameras used is based on the number of Players specified in the optional constructor argument. If you want multiply players but only one Camera, then overload this method.
|
|
void | SetCameraViewports () |
| Sets the Camera Viewports.
|
|
virtual void | OnInitialiseSkyBox () |
| Initialises the SkyBoxes and the Sun Entity.
|
|
virtual vxSkyBox | OnSkyboxInit () |
| This returns the skybox. Override this to provide your own skybox.
|
|
override void | OnInitialiseGUI () |
| This method is called near the end of the LoadContent method to load al GUI Items pertaining to the Sandbox including the toolbars and item registration.
|
|
virtual void | InitContextMenu () |
| Called when the context menu is initialised. This is useful for upstream classes to use.
|
|
virtual vxSceneProperties | InitWorldProperties () |
|
override void | RegisterSandboxEntities () |
| Override this Method and add in your Register Sandbox Entities code.
|
|
virtual void | OnShowSettingsDialog () |
| Shows the settings dialog for this level editor. This needs to be overriden.
|
|
virtual void | OnShowEngineSettingsDialog () |
|
virtual void | OnShowHelp () |
|
virtual void | OnShowAbout () |
|
virtual void | OnReportBug () |
|
virtual void | OnGoToDiscord () |
|
virtual void | OnGoToReddit () |
|
virtual void | OnInitialiseUIEditorRibbonControls () |
| Initialises Editor Ribbon Controls. Override this to implement your own game specific ribbon controls.
|
|
virtual void | OnInitialiseUIEditorRibbonContextTabs () |
| Called when initialising Editor Ribbon Context Tabs, such as tabs which are only visible during certain situations or contexts (Like Terrain Editing)
|
|
override void | LoadParticlePools () |
|
void | OnNewItemAdded (string key) |
|
virtual Texture2D | GenerateSandboxItemIcon (vxSandboxEntityRegistrationInfo EntityDescription) |
| Generates a sandbox icon for a given entity description.
|
|
virtual Texture2D | GenerateImportedItemIcon (string guid) |
|
void | DrawEntity (vxEntity3D entity, Matrix world, Matrix view, Matrix projection, Vector3 TempCamPos, string renderpass) |
|
override void | HandleInputBase () |
| Handles the input base.
|
|
virtual bool | FilterSelection (vxEntity3D entity) |
|
virtual void | OnRayHit (RayCastResult RayCastResult) |
|
virtual vxImportedEntity3D | GetDefaultImportedEntity () |
|
override vxGameplaySceneBase | OnNewSandbox () |
| Called when a New Sandbox file is called. Override this to provide your base class.
|
|
override vxSandboxFileLoadResult | LoadXMLFile (string FilePath, int version) |
|
virtual void | ExportFileToolbarItem_Clicked (object sender, vxUIControlClickEventArgs e) |
| Exports the Current File too an STL file.
|
|
virtual void | RegisterImportedModel (string guid, string filepath, vxMesh model) |
| Imports a model into the game, registers it and sets up it's guid.
|
|
virtual void | AddNewImportedItemSandboxButton (string guid) |
|
virtual void | InitialiseViewportManager () |
| Initialises the Viewport Manager.
|
|
virtual void | SetupObjectPools () |
|
virtual void | UnloadObjectPools () |
|
virtual T | AddSystem< T > () |
| Add a subsystem of type vxISceneSubSystem. It must be scene subsystem.
|
|
virtual vxSandboxFileLoadResult | LoadFile (string FilePath) |
|
virtual void | OnFileInfoLoad (vxFileInfo fileInfo) |
| When File Info is Loaded. This is called before LoadFile(...) is called.
|
|
virtual Point | GetPreviewImageSize () |
|
virtual Point | GetThumbnailImageSize () |
|
virtual void | OnLevelEditorNewFileToolbarItemClicked (object sender, vxUIControlClickEventArgs e) |
| Start a New File.
|
|
virtual void | OnLevelEditorNewFilePromptAccepted (object sender, PlayerIndexEventArgs e) |
| When to do when the New File button is clicked. This must be overridden.
|
|
virtual void | OnLevelEditorOpenFileToolbarItemClicked (object sender, vxUIControlClickEventArgs e) |
| Event for Opening a File.
|
|
virtual void | OnLevelEditorOpenFileDialogPromptAccepted (vxFileDialogItem file) |
|
virtual vxGameplaySceneBase | OnOpenSandboxFile (string filePath) |
| Called when a New Sandbox file is called. Override this to provide your base class.
|
|
virtual void | OnLevelEditorSaveBeforeCloseCheck_Accepted (object sender, PlayerIndexEventArgs e) |
|
virtual void | OnLevelEditorSaveBeforeCloseCheck_DontSave (object sender, PlayerIndexEventArgs e) |
|
virtual void | SaveFileAs (string saveAsMsg="Save the current file as...") |
|
virtual void | OnLevelEditorSaveFileToolbarItemClicked (object sender, vxUIControlClickEventArgs e) |
| Event for Saving the Current File.
|
|
virtual void | OnLevelEditorSaveAsFileToolbarItemClicked (object sender, vxUIControlClickEventArgs e) |
| Event for Saving As the Current File.
|
|
virtual void | OnFirstUpdate () |
| Called at the start of this scenes first update/tick.
|
|
virtual void | OnFirstDraw () |
| Called on the first draw of this scene.
|
|
|
Vector3 | LightPositions [get, set] |
| Gets or sets the light positions.
|
|
TimeOfDay | TimeOfDay [get, set] |
| What Time is it Mr. Wolf.
|
|
vxEnumSanboxEditMode | SandboxEditMode [get, set] |
| Gets or sets the sandbox edit mode.
|
|
new vxSerializableScene3DData | SandBoxFile [get] |
| File Format.
|
|
List< vxEntity3D > | SelectedItems [get] |
| List of Current Selected Items.
|
|
vxEntity3D | TempSandboxEntity [get] |
| The current temporary sandbox entity. This can be null.
|
|
vxContextMenuControl | ContextMenu [get] |
| The avaialble Context menu control. This can be accessed with [LCtrl] + [Right Mouse Click].
|
|
vxSlideTabPage | SandboxEntitySelector [get] |
|
vxSceneProperties | WorldProperties [get] |
| The world properties.
|
|
Dictionary< string, vxSandboxEntityRegistrationInfo > | RegisteredSandboxItemTypes [get] |
| This Dictionary contains a collection of all Registered items within the Sandbox.
|
|
List< vxCamera > | Cameras [get] |
| The cameras collection.
|
|
vxParticleSystemManager | ParticleSystem [get] |
| The particle system.
|
|
vxIPlayerProfile | PlayerProfile [get] |
|
vxUIManager | UIManager [get] |
| The Scene UI Manager.
|
|
string | Title [get, set] |
| The Level Title.
|
|
string | Description [get, set] |
| The Level Description.
|
|
string | WorkshopID [get, set] |
|
Texture2D | DefaultTexture [get] |
| Gets the default texture.
|
|
vxCommandManager | CommandManager [get] |
| The command manager to handle undo redos.
|
|
List< vxEntity > | Entities [get] |
| The entity collection for this Scene.
|
|
List< vxEntity3D > | EditorEntities [get] |
| Editor Entities.
|
|
vxEnumSandboxStatus | SandboxCurrentState [get, set] |
| Is the Sandbox In Testing Mode.
|
|
vxStartGameMode | SandboxStartGameType [get, set] |
|
virtual bool | IsSandboxLevelContentFile [get] |
| Is the sandbox level a content file or external/DLC?
|
|
Texture2D | PreviewImage [get, set] |
| The preview image used for this level.
|
|
bool | IsNewSandboxFile [get] |
| Returns back whether this is a new sandbox file.
|
|
bool | IsPopup [get, protected set] |
| Normally when one screen is brought up over the top of another, the first screen will transition off to make room for the new one. This property indicates whether the screen is only a small popup, in which case screens underneath it do not need to bother transitioning off.
|
|
bool | IsRemoved [get, set] |
| Has this scene been removed?
|
|
TimeSpan | TransitionOnTime [get, protected set] |
| Indicates how long the screen takes to transition on when it is activated.
|
|
TimeSpan | TransitionOffTime [get, protected set] |
| Indicates how long the screen takes to transition off when it is deactivated.
|
|
float | TransitionPosition [get, protected set] |
| Gets the current position of the screen transition, ranging from zero (fully active, no transition) to one (transitioned fully off to nothing).
|
|
float | TransitionAlpha [get] |
| Gets the current alpha of the screen transition, ranging from 1 (fully active, no transition) to 0 (transitioned fully off to nothing).
|
|
ScreenState | ScreenState [get, protected set] |
| Gets the current screen transition state.
|
|
bool | IsExiting [get, set] |
| There are two possible reasons why a screen might be transitioning off. It could be temporarily going away to make room for another screen that is on top of it, or it could be going away for good. This property indicates whether the screen is exiting for real: if set, the screen will automatically remove itself as soon as the transition finishes.
|
|
bool | IsActive [get] |
| Checks whether this screen is active and can respond to user input.
|
|
bool | otherScreenHasFocus [get, set] |
|
bool | IsFirstLoop [get] |
| Gets a value indicating whether this T:VerticesEngine.vxGameBaseScreen is first loop.
|
|
bool | IsLoadingFile [get, set] |
| Returns whether we're currently loading a file or not.
|
|
PlayerIndex? | ControllingPlayer [get, set] |
| Gets the index of the player who is currently controlling this screen, or null if it is accepting input from any player. This is used to lock the game to a specific player profile. The main menu responds to input from any connected gamepad, but whichever player makes a selection from this menu is given control over all subsequent screens, so other gamepads are inactive until the controlling player returns to the main menu.
|
|
bool | IsContentLoaded [get, set] |
| Has all the content been loaded yet?
|
|
bool | coveredByOtherScreen [get, set] |
|
The vxGameplayScene3D class implements the actual game logic for 3D Games.