~ubuntu-branches/ubuntu/lucid/blender/lucid

« back to all changes in this revision

Viewing changes to source/gameengine/Ketsji/KX_KetsjiEngine.h

  • Committer: Bazaar Package Importer
  • Author(s): Chris Coulson
  • Date: 2009-08-06 22:32:19 UTC
  • mfrom: (1.2.10 upstream)
  • Revision ID: james.westby@ubuntu.com-20090806223219-8z4eej1u8levu4pz
Tags: 2.49a+dfsg-0ubuntu1
* Merge from debian unstable, remaining changes:
  - debian/control: Build-depend on python-2.6 rather than python-2.5.
  - debian/misc/*.desktop: Add Spanish translation to .desktop 
    files.
  - debian/pyversions: 2.6.
  - debian/rules: Clean *.o of source/blender/python/api2_2x/
* New upstream release (LP: #382153).
* Refreshed patches:
  - 01_sanitize_sys.patch
  - 02_tmp_in_HOME
  - 10_use_systemwide_ftgl
  - 70_portability_platform_detection
* Removed patches merged upstream:
  - 30_fix_python_syntax_warning
  - 90_ubuntu_ffmpeg_52_changes

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*
2
 
 * $Id: KX_KetsjiEngine.h 16589 2008-09-18 01:46:28Z blendix $
 
2
 * $Id: KX_KetsjiEngine.h 20771 2009-06-09 22:56:43Z dfelinto $
3
3
 *
4
4
 * ***** BEGIN GPL LICENSE BLOCK *****
5
5
 *
74
74
        PyObject*                                       m_pythondictionary;
75
75
        class SCA_IInputDevice*                         m_keyboarddevice;
76
76
        class SCA_IInputDevice*                         m_mousedevice;
 
77
        class KX_Dome*                                          m_dome; // dome stereo mode
77
78
 
78
79
        /** Lists of scenes scheduled to be removed at the end of the frame. */
79
80
        std::set<STR_String> m_removingScenes;
102
103
        double                          m_previousClockTime;//previous clock time
103
104
        double                          m_remainingTime;
104
105
 
 
106
        static int                              m_maxLogicFrame;        /* maximum number of consecutive logic frame */
 
107
        static int                              m_maxPhysicsFrame;      /* maximum number of consecutive physics frame */
105
108
        static double                   m_ticrate;
106
109
        static double                   m_anim_framerate; /* for animation playback only - ipo and action */
107
110
 
126
129
        MT_CmMatrix4x4  m_overrideCamViewMat;
127
130
        float                   m_overrideCamNear;
128
131
        float                   m_overrideCamFar;
 
132
        float                   m_overrideCamLens;
129
133
 
130
134
        bool m_stereo;
131
135
        int m_curreye;
184
188
        void                                    RenderDebugProperties();
185
189
        void                                    RenderShadowBuffers(KX_Scene *scene);
186
190
        void                                    SetBackGround(KX_WorldInfo* worldinfo);
187
 
        void                                    SetWorldSettings(KX_WorldInfo* worldinfo);
188
191
        void                                    DoSound(KX_Scene* scene);
189
192
 
190
193
public:
193
196
        virtual ~KX_KetsjiEngine();
194
197
 
195
198
        // set the devices and stuff. the client must take care of creating these
 
199
        void                    SetWorldSettings(KX_WorldInfo* worldinfo);
196
200
        void                    SetKeyboardDevice(SCA_IInputDevice* keyboarddevice);
197
201
        void                    SetMouseDevice(SCA_IInputDevice* mousedevice);
198
202
        void                    SetNetworkDevice(NG_NetworkDeviceInterface* networkdevice);
205
209
        void                    SetGame2IpoMode(bool game2ipo,int startFrame);
206
210
 
207
211
        RAS_IRasterizer*                GetRasterizer(){return m_rasterizer;};
 
212
        RAS_ICanvas*                GetCanvas(){return m_canvas;};
 
213
        RAS_IRenderTools*           GetRenderTools(){return m_rendertools;};
 
214
 
 
215
        /// Dome functions
 
216
        void                    InitDome(short res, short mode, short angle, float resbuf, short tilt, struct Text* text); 
 
217
        void                    EndDome();
 
218
        void                    RenderDome();
 
219
        bool                    m_usedome;
208
220
 
209
221
        ///returns true if an update happened to indicate -> Render
210
222
        bool                    NextFrame();
232
244
        void                    GetSceneViewport(KX_Scene* scene, KX_Camera* cam, RAS_Rect& area, RAS_Rect& viewport);
233
245
 
234
246
        void SetDrawType(int drawingtype);
 
247
        int  GetDrawType(){return m_drawingmode;};
 
248
 
235
249
        void SetCameraZoom(float camzoom);
236
250
        
237
251
        void EnableCameraOverride(const STR_String& forscene);
240
254
        void SetCameraOverrideProjectionMatrix(const MT_CmMatrix4x4& mat);
241
255
        void SetCameraOverrideViewMatrix(const MT_CmMatrix4x4& mat);
242
256
        void SetCameraOverrideClipping(float near, float far);
 
257
        void SetCameraOverrideLens(float lens);
243
258
        
244
259
        /**
245
260
         * Sets display of all frames.
254
269
        bool GetUseFixedTime(void) const;
255
270
 
256
271
        /**
 
272
         * Returns current render frame clock time
 
273
         */
 
274
        double GetClockTime(void) const;
 
275
 
 
276
        double GetRealTime(void) const;
 
277
        /**
257
278
         * Returns the difference between the local time of the scene (when it
258
279
         * was running and not suspended) and the "curtime"
259
280
         */
267
288
         * Sets the number of logic updates per second.
268
289
         */
269
290
        static void SetTicRate(double ticrate);
 
291
        /**
 
292
         * Gets the maximum number of logic frame before render frame
 
293
         */
 
294
        static int GetMaxLogicFrame();
 
295
        /**
 
296
         * Sets the maximum number of logic frame before render frame
 
297
         */
 
298
        static void SetMaxLogicFrame(int frame);
 
299
        /**
 
300
         * Gets the maximum number of physics frame before render frame
 
301
         */
 
302
        static int GetMaxPhysicsFrame();
 
303
        /**
 
304
         * Sets the maximum number of physics frame before render frame
 
305
         */
 
306
        static void SetMaxPhysicsFrame(int frame);
270
307
 
271
308
        /**
272
309
         * Gets the framerate for playing animations. (actions and ipos)