Isle
Loading...
Searching...
No Matches
lego3dview.h
Go to the documentation of this file.
1#ifndef _Lego3DView_h
2#define _Lego3DView_h
3
4#include "decomp.h"
5#include "legoview1.h"
6
7class ViewManager;
8class ViewROI;
9
11// Lego3DView
12
20class Lego3DView : public LegoView1 {
21public:
25 Lego3DView();
26
30 ~Lego3DView() override;
31
42 BOOL Create(const CreateStruct& rCreateStruct, Tgl::Renderer* pRenderer);
43
48 void Destroy() override; // vtable+0x08
49
57 BOOL Add(ViewROI& rROI);
58
67 BOOL Remove(ViewROI& rROI);
68
77 BOOL Moved(ViewROI& rROI);
78
87
95 double Render(double p_und);
96
105 ViewROI* Pick(unsigned long x, unsigned long y);
106
112
118
119private:
124 ViewManager* m_pViewManager; // 0x88
125
129 double m_previousRenderTime; // 0x90
130
135 double m_unk0x98; // 0x98
136
141 ViewROI* m_pPointOfView; // 0xa0
142};
143
144// SYNTHETIC: LEGO1 0x100aaf10
145// Lego3DView::`scalar deleting destructor'
146
148//
149// Lego3DView implementation
150
155{
156 return m_pViewManager;
157}
158
163{
164 return m_pPointOfView;
165}
166
167#endif /* _Lego3DView_h */
[AI] Represents a 3D view for rendering and managing LEGO game objects in a 3D scene.
Definition: lego3dview.h:20
BOOL Create(const CreateStruct &rCreateStruct, Tgl::Renderer *pRenderer)
[AI] Initializes the 3D view with the specified surface creation parameters and renderer interface.
Definition: lego3dview.cpp:29
ViewROI * GetPointOfView()
[AI] Returns the current point-of-view object (the ViewROI the camera is following).
Definition: lego3dview.h:162
BOOL Add(ViewROI &rROI)
[AI] Adds a ViewROI (renderable object instance) to the scene.
Definition: lego3dview.cpp:78
BOOL SetPointOfView(ViewROI &rROI)
[AI] Sets the current point of view to the specified ViewROI and updates the camera transformation.
Definition: lego3dview.cpp:105
void Destroy() override
[AI] Cleans up resources allocated by the view, including the ViewManager, unset the point of view,...
Definition: lego3dview.cpp:63
~Lego3DView() override
[AI] Destroys the Lego3DView instance and all associated resources via Destroy().
Definition: lego3dview.cpp:23
BOOL Moved(ViewROI &rROI)
[AI] Notifies the view that a ViewROI has moved.
Definition: lego3dview.cpp:126
ViewManager * GetViewManager()
[AI] Returns the ViewManager responsible for managing scene objects and transformations.
Definition: lego3dview.h:154
Lego3DView()
[AI] Constructs a new Lego3DView instance.
Definition: lego3dview.cpp:14
ViewROI * Pick(unsigned long x, unsigned long y)
[AI] Picks (selects) a ViewROI in the scene by screen-space coordinates.
Definition: lego3dview.cpp:157
BOOL Remove(ViewROI &rROI)
[AI] Removes a ViewROI from the scene.
Definition: lego3dview.cpp:89
[AI] 3D view that supports advanced lighting for scene rendering.
Definition: legoview1.h:105
virtual double Render()
[AI] Renders a single frame and returns the render time for that frame.
Definition: tglsurface.cpp:179
[AI] Main interface/factory for rendering resources and scene graphs.
Definition: tgl.h:188
[AI] Manages all ViewROI objects that are rendered in a given scene, handles frustum culling,...
Definition: viewmanager.h:16
[AI] ViewROI objects represent viewable and placeable objects in the scene, each holding their own tr...
Definition: viewroi.h:13
typedef BOOL(FAR PASCAL *LPDIENUMDEVICEOBJECTSCALLBACKA)(LPCDIDEVICEOBJECTINSTANCEA
[AI] Contains initialization parameters for creating a TglSurface and its underlying DDraw/D3D resour...
Definition: tglsurface.h:40