![]() |
BlankMat 0.1.0
Free open-source 3D texture creation application
|
Public Member Functions | |
void | Draw (Window *window, Shader *shader) |
void | DrawShadows (Window *window, Shader *shader) |
void | FocusCamera () |
void | TogglePerspective () |
void | ToggleCameraRotationMode () |
void | UseShader (const std::string &name="") |
TextureContainer * | GetTextures () |
MaterialContainer * | GetMaterials () |
LightContainer * | GetLights () |
CameraContainer * | GetCameras () |
ShaderContainer * | GetShaders () |
MeshContainer * | GetMeshes () |
EntityContainer * | GetEntities () |
Camera * | GetCamera () |
Light * | GetLight () |
std::string | GetName () |
std::string | GetDirectory () |
const std::string | GetCurShader () |
Node * | GetRootNode () |
Shader * | GetShader (const std::string &name) |
Material * | GetMaterial (const std::string &name) |
Material * | GetDefaultMaterial () |
Texture * | GetTexture (const std::string &name) |
IEntity * | GetTransformHandle () |
State * | GetState () |
LightingMode | GetLightingMode () |
std::string | GetUniqueScope (const std::string &scope) |
bool | IsScopeActive (const std::string &scope) |
void | AddNode (Node *node) |
Mesh * | AddMesh (Mesh *mesh, Node *parent=nullptr) |
Camera * | AddCamera (const std::string &name, Camera *camera, bool select=false, bool replace=false) |
Light * | AddLight (const std::string &name, Light *light, bool select=false, bool replace=false) |
Texture * | AddTexture (const std::string &name, Texture *texture, bool replace=false) |
Material * | AddMaterial (const std::string &name, Material *material, bool replace=false) |
Shader * | CreateShader (const std::string &name, bool loadGeom) |
Shader * | CreateShader (const std::string &name, const std::string &source, bool loadGeom) |
Shader * | CreateShader (const std::string &name, Config *config) |
void | DeleteMesh (Mesh *mesh) |
void | DeleteNode (Node *node) |
void | DeleteSelectable (ISelectable *item) |
void | DeleteSelection () |
void | UpdateRenderList () |
void | RotateCamera (const glm::vec3 &delta) |
void | TranslateCamera (const glm::vec3 &delta) |
void | SetRootNode (Node *rootNode) |
void | SetCamera (const std::string &camera) |
void | SetLight (const std::string &light) |
void | SetName (const std::string &name) |
Sets the name of the object. Note: Does not set the scope variable. If renaming based on raw input, use Rename() instead to set the scope. | |
void | SetDirectory (const std::string &dir) |
void | SetLightingMode (LightingMode mode) |
void | SetEntityMaterial (IEntity *entity, Material *material) |
void | LoadMaterials (Config *config) |
const glm::mat4 & | GetProjectionMatrix (float aspect) |
const glm::mat4 & | GetViewMatrix () |
void | Clear () |
void | ClearRendering () |
Scene (State *state) | |
~Scene () | |
![]() | |
virtual void | Rename (const std::string &newName, bool includeScope=true) |
Renames the object, setting the scope to be the scoped part of the name. | |
virtual void | SetScope (const std::string &scope) |
Sets the scope of the object. | |
std::string | GetUnscopedName () |
Returns the unscoped name of the object. | |
std::string | GetScope () |
Returns the scope of the object. | |
std::string | GetScopedName () |
Returns the scoped name of the object. | |
void | InitName (const std::string &name, const std::string &scope="") |
Initializes the nameable object with the given name and scope. | |
INameable () | |
Creates a default nameable object without name or scope. | |
Protected Member Functions | |
Material * | LoadMaterial (Config *config, const std::string &name, const std::string &scope) |
Texture * | LoadTexture (TextureType type, const std::string &path, const std::string &scope, const std::string &defaultName) |
void | HandleWireframe () |
const glm::mat4 & | GetViewAxisProjection (Window *window) |
void | DeleteNodeContents (Node *node) |
Protected Attributes | |
std::string | mDirectory = "" |
IEntity * | mGrid = nullptr |
IEntity * | mTransformHandle = nullptr |
IEntity * | mViewAxisHandle = nullptr |
int | mViewAxisPrevWidth = 0 |
int | mViewAxisPrevHeight = 0 |
glm::mat4 | mViewAxisProjection = glm::mat4(1.0f) |
std::string | mCurShader = "" |
Shader * | mShader = nullptr |
Node * | mRootNode = nullptr |
State * | mState = nullptr |
LightingMode | mMode = LightingMode::FLAT |
std::unordered_map< std::string, EntityContainer * > | mMeshRenderList |
std::unordered_set< std::string > | mScopes |
TextureContainer * | mTextures = nullptr |
MaterialContainer * | mMaterials = nullptr |
LightContainer * | mLights = nullptr |
CameraContainer * | mCameras = nullptr |
ShaderContainer * | mShaders = nullptr |
MeshContainer * | mMeshes = nullptr |
EntityContainer * | mEntities = nullptr |
![]() | |
std::string | mName = "" |
Name of the object. | |
std::string | mScope = "" |
Scope of the object. | |
Static Protected Attributes | |
static const float | WIREFRAME_LINE = 0.5f |
Scene::Scene | ( | State * | state | ) |
Scene::~Scene | ( | ) |
Camera * Scene::AddCamera | ( | const std::string & | name, |
Camera * | camera, | ||
bool | select = false , |
||
bool | replace = false |
||
) |
Light * Scene::AddLight | ( | const std::string & | name, |
Light * | light, | ||
bool | select = false , |
||
bool | replace = false |
||
) |
Material * Scene::AddMaterial | ( | const std::string & | name, |
Material * | material, | ||
bool | replace = false |
||
) |
void Scene::AddNode | ( | Node * | node | ) |
void Scene::Clear | ( | ) |
void Scene::ClearRendering | ( | ) |
Shader * Scene::CreateShader | ( | const std::string & | name, |
bool | loadGeom | ||
) |
Shader * Scene::CreateShader | ( | const std::string & | name, |
const std::string & | source, | ||
bool | loadGeom | ||
) |
void Scene::DeleteMesh | ( | Mesh * | mesh | ) |
void Scene::DeleteNode | ( | Node * | node | ) |
|
protected |
void Scene::DeleteSelectable | ( | ISelectable * | item | ) |
void Scene::DeleteSelection | ( | ) |
void Scene::FocusCamera | ( | ) |
Camera * Scene::GetCamera | ( | ) |
CameraContainer * Scene::GetCameras | ( | ) |
const std::string Scene::GetCurShader | ( | ) |
Material * Scene::GetDefaultMaterial | ( | ) |
std::string Scene::GetDirectory | ( | ) |
EntityContainer * Scene::GetEntities | ( | ) |
Light * Scene::GetLight | ( | ) |
LightingMode Scene::GetLightingMode | ( | ) |
LightContainer * Scene::GetLights | ( | ) |
Material * Scene::GetMaterial | ( | const std::string & | name | ) |
MaterialContainer * Scene::GetMaterials | ( | ) |
MeshContainer * Scene::GetMeshes | ( | ) |
std::string Scene::GetName | ( | ) |
const glm::mat4 & Scene::GetProjectionMatrix | ( | float | aspect | ) |
Node * Scene::GetRootNode | ( | ) |
Shader * Scene::GetShader | ( | const std::string & | name | ) |
ShaderContainer * Scene::GetShaders | ( | ) |
State * Scene::GetState | ( | ) |
Texture * Scene::GetTexture | ( | const std::string & | name | ) |
TextureContainer * Scene::GetTextures | ( | ) |
IEntity * Scene::GetTransformHandle | ( | ) |
std::string Scene::GetUniqueScope | ( | const std::string & | scope | ) |
|
protected |
const glm::mat4 & Scene::GetViewMatrix | ( | ) |
|
protected |
bool Scene::IsScopeActive | ( | const std::string & | scope | ) |
|
protected |
void Scene::LoadMaterials | ( | Config * | config | ) |
|
protected |
void Scene::RotateCamera | ( | const glm::vec3 & | delta | ) |
void Scene::SetCamera | ( | const std::string & | camera | ) |
void Scene::SetDirectory | ( | const std::string & | dir | ) |
void Scene::SetLight | ( | const std::string & | light | ) |
void Scene::SetLightingMode | ( | LightingMode | mode | ) |
|
virtual |
void Scene::SetRootNode | ( | Node * | rootNode | ) |
void Scene::ToggleCameraRotationMode | ( | ) |
void Scene::TogglePerspective | ( | ) |
void Scene::TranslateCamera | ( | const glm::vec3 & | delta | ) |
void Scene::UpdateRenderList | ( | ) |
void Scene::UseShader | ( | const std::string & | name = "" | ) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
inlinestaticprotected |