model module¶
This module processes uniform attributes for the appropriate model
- class model.AdvancedSkyBox(app, vao_name='advanced_skybox', tex_id='skybox', pos=(0, 0, 0), rot=(0, 0, 0), scale=(1, 1, 1))[source]¶
Bases:
BaseModelAdvanced skybox with proper perspective projection.
Uses inverse projection-view matrix for accurate cubemap sampling.
- class model.BaseModel(app, vao_name, tex_id, pos=(0, 0, 0), rot=(0, 0, 0), scale=(1, 1, 1))[source]¶
Bases:
objectBase class for all 3D models with position, rotation, and scale.
Provides fundamental model matrix calculations and rendering functionality.
- class model.Cat(app, vao_name='cat', tex_id='cat', pos=(0, 0, 0), rot=(-90, 0, 0), scale=(1, 1, 1))[source]¶
Bases:
ExtendedBaseModelCat model with specific orientation and texture.
- class model.Cube(app, vao_name='cube', tex_id=0, pos=(0, 0, 0), rot=(0, 0, 0), scale=(1, 1, 1))[source]¶
Bases:
ExtendedBaseModelBasic cube model with texture and lighting support.
- class model.ExtendedBaseModel(app, vao_name, tex_id, pos, rot, scale)[source]¶
Bases:
BaseModelSubclass for an application’s main objects
- class model.MovingCube(*args, **kwargs)[source]¶
Bases:
CubeAnimated cube that rotates continuously.
- class model.SkyBox(app, vao_name='skybox', tex_id='skybox', pos=(0, 0, 0), rot=(0, 0, 0), scale=(1, 1, 1))[source]¶
Bases:
BaseModelBasic skybox that renders a cubemap texture.
Uses simplified view matrix to prevent skybox rotation with camera.