module voxel.svo.entity

Code Map

module voxel.svo.entity;


//! A single entity that points into a SVO tree.
class Entity
{
public:
	data: Data;
	frame: size_t;
	frames: u32[];
	index: size_t;
	numLevels: u32;


public:
	this(data: Data, frames: u32[], numLevels: u32) { }
	fn stepFrame() { }
	fn start() u32 { }
	fn rot() math.Quatf { }
	fn pos() math.Point3f { }


protected:
	fn entry() EntityEntry* { }
}

//! Holds data for multiple SVO trees and Entities.
class Data
{
public:
	data: u32[];
	trees: EntityEntry[];
	create: Create;
	texture: GLuint;
	buffer: GLuint;


public:
	this(create: Create, data: void[]) { }
	fn count(obj: Entity, levels: u32) size_t { }
}

//! Entity data kept in a array.
struct EntityEntry
{
public:
	//! Position of this Tree.
	pos: math.Point3f;
	//! Starting address of this Tree.
	start: u32;
	//! Rotation of this Tree.
	rot: math.Quatf;
}
class Entity

A single entity that points into a SVO tree.

struct EntityEntry

Entity data kept in a array.

pos: math.Point3f

Position of this Tree.

start: u32

Starting address of this Tree.

rot: math.Quatf

Rotation of this Tree.

class Data

Holds data for multiple SVO trees and Entities.