Tramway SDK
Classes | Namespaces | Functions | Variables
scene.cpp File Reference
#include <render/scene.h>
#include <components/render.h>
#include <render/model.h>
#include <templates/pool.h>
#include <templates/aabb.h>
#include <templates/octree.h>

Classes

struct  tram::Render::AABB::AABBLeaf
 
struct  tram::Render::LightTree::Light
 

Namespaces

namespace  tram::Render::SceneTree
 Scene tree.
 
namespace  tram::Render::LightTree
 Scene light tree.
 
namespace  tram
 Serialization, i.e.
 
namespace  tram::Render
 High-level Render system API.
 
namespace  tram::Render::AABB
 

Functions

aabbleaf_t tram::Render::AABB::InsertLeaf (RenderComponent *component, vec3 position, quat rotation, vec3 scale)
 Inserts a RenderComponent leaf into the scene tree. More...
 
void tram::Render::AABB::RemoveLeaf (aabbleaf_t leaf_id)
 Removes a leaf from. More...
 
QueryResponse tram::Render::AABB::FindNearestFromRay (vec3 ray_pos, vec3 ray_dir, uint32_t mask)
 Peforms a raycast and retrieves the nearest object. More...
 
void tram::Render::AABB::DebugDrawTree ()
 Draws the scene tree for a single frame. More...
 
Octree< Light * > tram::Render::LightTree::light_tree ("light tree", 200)
 
void tram::Render::LightTree::AddLight (light_t light, vec3 pos, float dist)
 Adds a light to the light tree. More...
 
void tram::Render::LightTree::FindLights (vec3 position, light_t *dest)
 Finds the 4 nearest lights to a given position. More...
 
void tram::Render::LightTree::RemoveLight (light_t light)
 Removes a light from the light tree. More...
 

Variables

Pool< Light > tram::Render::LightTree::light_list ("lighttree pool", 200)