source: trunk/src/scene.h @ 1325

Last change on this file since 1325 was 1325, checked in by sam, 8 years ago

core: move some of the camera view logic from the Video class to the
Scene and Camera classes.

  • Property svn:keywords set to Id
File size: 1.0 KB
Line 
1//
2// Lol Engine
3//
4// Copyright: (c) 2010-2012 Sam Hocevar <sam@hocevar.net>
5//   This program is free software; you can redistribute it and/or
6//   modify it under the terms of the Do What The Fuck You Want To
7//   Public License, Version 2, as published by Sam Hocevar. See
8//   http://sam.zoy.org/projects/COPYING.WTFPL for more details.
9//
10
11//
12// The Scene class
13// ---------------
14//
15
16#if !defined __LOL_SCENE_H__
17#define __LOL_SCENE_H__
18
19#include <stdint.h>
20
21#include "tileset.h"
22
23namespace lol
24{
25
26class SceneData;
27
28class Scene
29{
30public:
31    Scene();
32    ~Scene();
33
34    static Scene *GetDefault();
35
36    void SetViewMatrix(mat4 const &m);
37    void SetProjMatrix(mat4 const &m);
38    mat4 const &GetViewMatrix(void);
39    mat4 const &GetProjMatrix(void);
40
41    void Reset();
42    void Render();
43
44    /* FIXME: this should be deprecated -- it doesn't really match
45     * the architecture we want to build */
46    void AddTile(TileSet *tileset, int id, vec3 pos, int o, vec2 scale);
47
48private:
49    SceneData *data;
50};
51
52} /* namespace lol */
53
54#endif // __LOL_SCENE_H__
55
Note: See TracBrowser for help on using the repository browser.