mirror of
https://github.com/luanti-org/luanti.git
synced 2025-08-01 17:38:41 +00:00
Move generateTextureFromMesh to TextureSource to fix a texture leak
TextureSource has a list of textures to delete (m_texture_trash) so this provides a proper, non-hacky way to delete RTT textures. Also, the prior, hacky way of deleting them seems to be broken (see pull request #803). To avoid header file clutter by repeating the same long list of arguments over and over again, store the arguments of generateTextureFromMesh in a struct called TextureFromMeshParams. Also fix issue #782 (Only use bilinear (and others) on item textures when settings allow it).
This commit is contained in:
parent
b1ef850877
commit
8f1d5d34a6
5 changed files with 202 additions and 230 deletions
16
src/mesh.h
16
src/mesh.h
|
@ -69,20 +69,4 @@ void setMeshColorByNormalXYZ(scene::IMesh *mesh,
|
|||
const video::SColor &colorY,
|
||||
const video::SColor &colorZ);
|
||||
|
||||
/*
|
||||
Render a mesh to a texture.
|
||||
Returns NULL if render-to-texture failed.
|
||||
*/
|
||||
video::ITexture *generateTextureFromMesh(scene::IMesh *mesh,
|
||||
IrrlichtDevice *device,
|
||||
core::dimension2d<u32> dim,
|
||||
std::string texture_name,
|
||||
v3f camera_position,
|
||||
v3f camera_lookat,
|
||||
core::CMatrix4<f32> camera_projection_matrix,
|
||||
video::SColorf ambient_light,
|
||||
v3f light_position,
|
||||
video::SColorf light_color,
|
||||
f32 light_radius);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue