rayquiro.engine
rayquiro.engine in 0.0.2 is an official installable native module for scenes, entities, rendering, lighting, assets, input, and engine-oriented workflows.
Install it with:
rqio install rayquiro.engine
or locally:
rqio install rayquiro.engine --local
Import
import rayquiro.engine as engine;
The alias raytolfas.engine is also accepted.
What It Covers
rayquiro.engine in 0.0.2 includes:
- backend selection
- window lifecycle
- frame lifecycle
- scene-oriented workflow
- entities and resources
- mesh, texture, and material APIs
- camera and input helpers
- lighting helpers
- post-processing style controls
- scene save/load/watch/reload
- immediate draw helpers
Window And Backend API
engine.init(width, height, title)
engine.window(width, height, title)
engine.shutdown()
engine.should_close()
engine.backend(name)
engine.backend_name()
engine.backend_info()
engine.vsync(enabled?)
engine.msaa(samples?)
engine.target_fps(fps)
engine.frame_time()
raylib is the more stable renderer path today. vulkan is broader than before but still evolving.
Frame Helpers
engine.begin()
engine.end()
engine.frame_begin()
engine.frame_end()
engine.clear(color)
These helpers control frame lifecycle for direct or scene-based rendering.
Camera API
engine.set_camera(position, target, up, fov)
engine.camera(position, target, up, fov)
engine.camera_orbit(yaw, pitch, distance)
engine.camera_fov(fov?)
Scene API
engine.scene(name)
engine.scene_clear()
engine.scene_stats()
engine.scene_draw()
engine.scene_save(path, optionalSceneName)
engine.scene_load(path, optionalSceneName)
engine.scene_watch(path?, optionalSceneName)
engine.scene_reload(path?, optionalSceneName)
Scene files in 0.0.2 use .scene data for scene persistence and editor-style workflows.
Assets API
engine.assets_root(path?)
engine.asset_path(path)
engine.asset_exists(path)
Mesh, Texture, And Material API
engine.mesh(name, kindOrSource, optionalData)
engine.mesh_exists(name)
engine.texture(name, source)
engine.texture_exists(name)
engine.material(name, albedo, roughness, metallic, emissive)
engine.material_exists(name)
engine.material_texture(materialName, textureName)
Entity API
engine.entity(name, kind, position, color)
engine.entity_remove(name)
engine.entity_exists(name)
engine.entity_set_position(name, position)
engine.entity_get_position(name)
engine.entity_set_size(name, size)
engine.entity_set_scale(name, scale)
engine.entity_set_radius(name, radius)
engine.entity_set_color(name, color)
engine.entity_set_visible(name, visible)
engine.entity_mesh(entityName, meshName)
engine.entity_texture(entityName, textureName)
engine.entity_material(entityName, materialName)
Lighting API
engine.light_ambient(color)
engine.light_directional(direction, color, intensity)
Post-Processing Style Controls
engine.exposure(value?)
engine.vignette(value?)
engine.film_grain(value?)
engine.saturation(value?)
engine.contrast(value?)
engine.bloom(value?)
engine.fog(color, near, far, density)
engine.volumetric(value?)
engine.postfx_info()
Input API
engine.key_down(keyCode)
engine.key_pressed(keyCode)
engine.mouse_down(buttonCode)
engine.mouse_pos()
Immediate Draw Helpers
These still exist in 0.0.2:
engine.draw_grid(slices, spacing)
engine.draw_cube(position, size, color)
engine.draw_plane(position, size2d, color)
engine.draw_sphere(position, radius, color)
engine.draw_text(text, x, y, fontSize, color)
engine.draw_fps(x, y)
Example
import rayquiro.engine as engine;
engine.backend("raylib");
engine.window(1280, 720, "RayQuiro Engine");
engine.scene("demo");
engine.camera([6, 4, 8], [0, 1, 0], [0, 1, 0], 60);
engine.light_ambient([22, 28, 42, 255]);
engine.light_directional([0.45, -1, -0.35], [255, 236, 206, 255], 1.0);
engine.entity("ground", "plane", [0, 0, 0], [176, 144, 86, 255]);
engine.entity("hero", "cube", [0, 1, 0], [120, 190, 255, 255]);
while (!engine.should_close()) {
engine.frame_begin();
engine.scene_draw();
engine.frame_end();
}
engine.shutdown();
Notes
rayquiro.engineis an official installable module in0.0.2- it is not a built-in system namespace
- the release path is Windows-first
- backend maturity still varies by backend
raylibis currently the more stable renderer path