opengl: Revamp multi-texturing.
This commit is contained in:
@@ -35,7 +35,7 @@ is
|
||||
the_human_graphics_Model : constant openGL.Model.any.view
|
||||
:= openGL.Model.any.new_Model (Model => openGL.to_Asset ("./assets/opengl/model/human.obj"),
|
||||
Texture => openGL.to_Asset ("./assets/opengl/texture/wooden-crate.jpg"),
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => openGL.to_Asset ("./assets/opengl/texture/wooden-crate.jpg")]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => openGL.to_Asset ("./assets/opengl/texture/wooden-crate.jpg")]),
|
||||
Texture_is_lucid => False);
|
||||
|
||||
the_human_physics_Model : constant physics.Model.view
|
||||
@@ -54,7 +54,7 @@ is
|
||||
the_cobra_graphics_Model : aliased constant openGL.Model.any.view
|
||||
:= openGL.Model.any.new_Model (Model => openGL.to_Asset ("./assets/oolite_cobra3.obj"),
|
||||
Texture => openGL.to_Asset ("./assets/oolite_cobra3_diffuse.png"),
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => openGL.to_Asset ("./assets/oolite_cobra3_diffuse.png")]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => openGL.to_Asset ("./assets/oolite_cobra3_diffuse.png")]),
|
||||
Texture_is_lucid => False);
|
||||
|
||||
the_cobra_physics_Model : constant physics.Model.view
|
||||
|
||||
@@ -47,7 +47,7 @@ is
|
||||
Model => openGL.to_Asset ("./box_1_bone.dae"),
|
||||
-- Model => openGL.to_Asset ("./box_2_bone.dae"),
|
||||
Texture => openGL.null_Asset,
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => openGL.to_Asset ("./assets/opengl/textures/wooden-crate.jpg")]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => openGL.to_Asset ("./assets/opengl/textures/wooden-crate.jpg")]),
|
||||
Texture_is_lucid => False);
|
||||
the_Rig : aliased gel.Rig.item;
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ is
|
||||
Col => 1,
|
||||
Heights => openGL.Model.terrain.height_Map_view (gl_Heights),
|
||||
color_Map => terrain_Texture,
|
||||
texture_Details => texture_Set.to_Details ([1 => terrain_Texture]),
|
||||
texture_Details => texture_Set.to_Set ([1 => terrain_Texture]),
|
||||
Tiling => (s => (0.0, 1.0),
|
||||
t => (0.0, 1.0)));
|
||||
|
||||
@@ -170,7 +170,7 @@ begin
|
||||
the_ball_Model : constant openGL.Model.sphere.lit_colored_textured.view
|
||||
:= openGL.Model.sphere.lit_colored_textured.new_Sphere (Radius => 1.0,
|
||||
Image => openGL.to_Asset ("assets/gel/golf_green-16x16.tga"),
|
||||
texture_Details => texture_Set.to_Details ([1 => openGL.to_Asset ("assets/gel/Face1.bmp")]));
|
||||
texture_Details => texture_Set.to_Set ([1 => openGL.to_Asset ("assets/gel/Face1.bmp")]));
|
||||
the_Ball : constant gel.Sprite.view
|
||||
:= gel.Sprite.forge.new_Sprite (Name => "demo.Ball",
|
||||
World => the_Applet.gui_World.all'Access,
|
||||
@@ -182,7 +182,7 @@ begin
|
||||
the_cone_Model : constant openGL.Model.any.view
|
||||
:= openGL.Model.any.new_Model (Model => openGL.to_Asset ("assets/gel/model/unit_cone.obj"),
|
||||
Texture => openGL.to_Asset ("assets/gel/Face1.bmp"),
|
||||
texture_Details => texture_Set.to_Details ([1 => openGL.to_Asset ("assets/gel/Face1.bmp")]),
|
||||
texture_Details => texture_Set.to_Set ([1 => openGL.to_Asset ("assets/gel/Face1.bmp")]),
|
||||
Texture_is_lucid => False);
|
||||
|
||||
the_cone_physics_Model : constant physics.Model.view
|
||||
@@ -198,7 +198,7 @@ begin
|
||||
the_cylinder_Model : constant openGL.Model.any.view
|
||||
:= openGL.Model.any.new_Model (Model => openGL.to_Asset ("assets/gel/model/unit_cylinder.obj"),
|
||||
Texture => openGL.to_Asset ("assets/gel/Face1.bmp"),
|
||||
texture_Details => texture_Set.to_Details ([1 => openGL.to_Asset ("assets/gel/Face1.bmp")]),
|
||||
texture_Details => texture_Set.to_Set ([1 => openGL.to_Asset ("assets/gel/Face1.bmp")]),
|
||||
Texture_is_lucid => False);
|
||||
|
||||
the_cylinder_physics_Model : constant physics.Model.view
|
||||
@@ -216,7 +216,7 @@ begin
|
||||
the_capsule_Model : constant openGL.Model.capsule.textured.view
|
||||
:= openGL.Model.capsule.textured.new_Capsule (Radius => 0.5,
|
||||
Height => 2.0,
|
||||
texture_Details => texture_Set.to_Details ([1 => openGL.to_Asset ("assets/gel/Face1.bmp")]),
|
||||
texture_Details => texture_Set.to_Set ([1 => openGL.to_Asset ("assets/gel/Face1.bmp")]),
|
||||
Image => openGL.to_Asset ("assets/gel/Face1.bmp"));
|
||||
|
||||
|
||||
|
||||
@@ -154,7 +154,7 @@ is
|
||||
then
|
||||
the_graphics_Model := openGL.Model.sphere.lit_colored_textured.new_Sphere (Radius,
|
||||
Color => Color,
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => Texture]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => Texture]),
|
||||
Image => Texture).all'Access;
|
||||
else
|
||||
the_graphics_Model := openGL.Model.circle.colored.new_circle (Radius,
|
||||
@@ -164,13 +164,7 @@ is
|
||||
|
||||
else
|
||||
the_graphics_Model := openGL.Model.circle.lit_textured.new_Circle (Radius,
|
||||
texture_Details => (Fades => [1 => 0.0, others => <>],
|
||||
texture_Applies => [1 => True, others => <>],
|
||||
Textures => [1 => Texture, others => <>],
|
||||
Objects => [others => <>],
|
||||
texture_Count => 1,
|
||||
texture_Tilings => [others => (S => 1.0, T => 1.0)],
|
||||
Animation => null)).all'Access;
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => Texture])).all'Access;
|
||||
end if;
|
||||
|
||||
return gel.Sprite.Forge.new_Sprite (Name,
|
||||
@@ -221,13 +215,16 @@ is
|
||||
(Color, openGL.Opaque)).all'Access;
|
||||
else
|
||||
the_graphics_Model := openGL.Model.polygon.lit_textured.new_Polygon (vertex_Sites => openGL.Vector_2_array (Vertices),
|
||||
texture_Details => (Fades => [1 => 0.0, others => <>],
|
||||
Textures => [1 => Texture, others => <>],
|
||||
Objects => [others => <>],
|
||||
texture_Count => 1,
|
||||
texture_Tilings => texture_Tiling,
|
||||
texture_Applies => [others => True],
|
||||
Animation => null)).all'Access;
|
||||
texture_Details => openGL.texture_Set.to_Set (texture_Assets => [1 => Texture],
|
||||
texture_Tilings => texture_Tiling,
|
||||
Animation => null)).all'Access;
|
||||
-- texture_Details => (Fades => [1 => 0.0, others => <>],
|
||||
-- Textures => [1 => Texture, others => <>],
|
||||
-- Objects => [others => <>],
|
||||
-- texture_Count => 1,
|
||||
-- texture_Tilings => texture_Tiling,
|
||||
-- texture_Applies => [others => True],
|
||||
-- Animation => null)).all'Access;
|
||||
end if;
|
||||
|
||||
return gel.Sprite.Forge.new_Sprite (Name,
|
||||
@@ -318,7 +315,7 @@ is
|
||||
the_graphics_Model := openGL.Model.sphere.lit_colored_textured.new_Sphere (Radius,
|
||||
lat_Count => lat_Count,
|
||||
long_Count => long_Count,
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => Texture]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => Texture]),
|
||||
Image => Texture).all'Access;
|
||||
else
|
||||
the_graphics_Model := openGL.Model.sphere.lit_colored.new_Sphere (Radius,
|
||||
@@ -337,7 +334,7 @@ is
|
||||
the_graphics_Model := openGL.Model.sphere.textured.new_Sphere (Radius,
|
||||
lat_Count => lat_Count,
|
||||
long_Count => long_Count,
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => Texture]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => Texture]),
|
||||
Image => Texture).all'Access;
|
||||
end if;
|
||||
end if;
|
||||
@@ -371,7 +368,7 @@ is
|
||||
begin
|
||||
the_graphics_Model := openGL.Model.sphere.textured.new_Sphere (Radius,
|
||||
lat_Count => 180,
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => Texture]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => Texture]),
|
||||
Image => Texture,
|
||||
is_Skysphere => True).all'Access;
|
||||
return gel.Sprite.Forge.new_Sprite ("skysphere_Sprite",
|
||||
@@ -449,7 +446,7 @@ is
|
||||
Lower => (texture_Name => Texture),
|
||||
Left => (texture_Name => Texture),
|
||||
Right => (texture_Name => Texture)],
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => Texture]));
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => Texture]));
|
||||
the_box_physics_Model : constant physics.Model.view
|
||||
:= physics.Model.Forge.new_physics_Model (shape_Info => (Kind => physics.Model.Cube,
|
||||
half_Extents => Size / 2.0),
|
||||
@@ -486,7 +483,7 @@ is
|
||||
Height => Size (2)),
|
||||
Plane => openGL.Model.Billboard.xy,
|
||||
Texture => Texture,
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => Texture]));
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => Texture]));
|
||||
|
||||
the_billboard_physics_Model : constant physics.Model.view
|
||||
:= physics.Model.Forge.new_physics_Model (shape_Info => (Kind => physics.Model.Cube,
|
||||
@@ -527,7 +524,7 @@ is
|
||||
Plane => openGL.Model.Billboard.xy,
|
||||
Texture => Texture,
|
||||
Color => Color,
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => Texture]));
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => Texture]));
|
||||
the_billboard_physics_Model : constant physics.Model.view
|
||||
:= physics.Model.Forge.new_physics_Model (shape_Info => (Kind => physics.Model.Cube,
|
||||
half_Extents => Size / 2.0),
|
||||
@@ -690,7 +687,7 @@ is
|
||||
:= openGL.Model.Text.lit_colored.new_Text (Text => Text,
|
||||
Font => Font,
|
||||
Color => (Color, openGL.Opaque),
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => the_Texture]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => the_Texture]),
|
||||
Centered => True);
|
||||
|
||||
the_physics_Model : physics.Model.view;
|
||||
|
||||
@@ -479,7 +479,7 @@ is
|
||||
Model => openGL.to_Asset ("assets/gel/collada/mh-human-dae.dae"),
|
||||
-- model => gel.to_Asset ("assets/gel/collada/alfieri.dae"),
|
||||
Texture => openGL.null_Asset, -- gel.to_Asset ("assets/collada/gel-human-texture.tga"),
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => openGL.to_Asset ("./assets/gel/Face1.bmp")]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => openGL.to_Asset ("./assets/gel/Face1.bmp")]),
|
||||
Texture_is_lucid => False);
|
||||
begin
|
||||
Self.bone_Sprites (the_Bone) := gel.Sprite.forge.new_Sprite (Name => sprite_Name,
|
||||
|
||||
@@ -705,7 +705,7 @@ is
|
||||
the_human_graphics_Model : aliased openGL.Model.any.view
|
||||
:= openGL.Model.any.new_Model (Model => to_Asset (model_Name.all),
|
||||
Texture => openGL.null_Asset, -- gel.to_Asset ("assets/collada/gel-human-texture.tga"),
|
||||
texture_Details => openGL.texture_Set.to_Details ([1 => openGL.to_Asset ("./assets/opengl/texture/wooden-crate.jpg")]),
|
||||
texture_Details => openGL.texture_Set.to_Set ([1 => openGL.to_Asset ("./assets/opengl/texture/wooden-crate.jpg")]),
|
||||
Texture_is_lucid => False);
|
||||
|
||||
the_physics_Model : constant standard.physics.Model.view
|
||||
|
||||
Reference in New Issue
Block a user