private static void Main(string[] args) { library = nativeLibrary.ActivateInterface <IX3DNative>("EngineRenderer"); FileLoader.TestPath(); Debug.Log("Opening window"); _mainWindow = new GlfwWindow(); TestError(); RustError err = library.last_error_message(); RustString message = new RustString(err.message); Console.WriteLine(message.AsString()); while (!_mainWindow.Closed()) { var currentFrame = DateTime.Now; var deltaTime = (currentFrame - _lastFrame).TotalSeconds; var deltaTimeMs = (currentFrame - _lastFrame).TotalMilliseconds; _mainWindow.UpdateTitle($"Crazy Engine - {deltaTimeMs} ms -- FPS: {1.0 / deltaTime}"); // TestRender(); _mainWindow.Update(); _lastFrame = currentFrame; } _mainWindow.Dispose(); }
public X3DMaterial(X3DShader shader) { library = nativeLibrary.ActivateInterface <IX3DNative>("EngineRenderer"); db = library.x3d_new_material(shader.GetHandle()); // db = X3DMaterialNative.CreateX3DMaterial(shader.GetHandle()); this.shader = shader; }
protected override bool ReleaseHandle() { if (!this.IsInvalid) { var NativeLibraryBuilder = new NativeLibraryBuilder(); IX3DNative library = NativeLibraryBuilder.Default.ActivateInterface <IX3DNative>("EngineRenderer"); library.x3d_drop_shader(handle); } return(true); }
public X3DMesh(X3DRenderer renderer) { library = nativeLibrary.ActivateInterface <IX3DNative>("EngineRenderer"); db = library.x3d_new_mesh(); // db = X3DMeshNative.CreateX3DMesh(renderer.GetHandle()); //Check for errors RustError err = library.last_error_message(); RustString message = new RustString(err.message); Console.WriteLine(message.AsString()); //Not checking anything right now though :) }
public X3DShader(string vs, string gs, string ts, string fs) { library = nativeLibrary.ActivateInterface <IX3DNative>("EngineRenderer"); db = library.x3d_new_shader(vs, gs, ts, fs); // db = X3DShaderNative.CreateX3DShader(vs, gs, ts, fs); //Check for errors RustError err = library.last_error_message(); RustString message = new RustString(err.message); Console.WriteLine(message.AsString()); //Not checking anything right now though :) }
public X3DCamera(float fovy, float z_near, float z_far, float aperture, float shutter_speed, float iso, RustVector3 position) //, Quaternion rotation { library = nativeLibrary.ActivateInterface <IX3DNative>("EngineRenderer"); db = library.x3d_new_camera(fovy, z_near, z_far, aperture, shutter_speed, iso, position); //, rotation }
public X3DCamera() { library = nativeLibrary.ActivateInterface <IX3DNative>("EngineRenderer"); db = library.x3d_new_camera_default(); }
public X3DRenderer(uint width, uint height) { library = nativeLibrary.ActivateInterface <IX3DNative>("EngineRenderer"); db = library.x3d_new_renderer(width, height); }