summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2015-02-05 11:47:41 +0100
committerSean Harmer <sean.harmer@kdab.com>2015-02-08 15:03:04 +0000
commit7de2d0362fccfeffffcabcec718810ce7997fa40 (patch)
tree3b9ec47381984861544f9396a63fc4009b9dc83a
parent6eb2807b9a25d36644f675d2a1302fba182f6083 (diff)
Skybox example updated to use new texture API
Change-Id: Ibe21febfee752e7708b909b5411e35f75ebfb9e5 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r--examples/exampleresources/exampleresources.pro3
-rw-r--r--examples/skybox/Skybox.qml16
-rw-r--r--src/quick3d/imports/render/qt3dquick3drenderplugin.cpp2
3 files changed, 15 insertions, 6 deletions
diff --git a/examples/exampleresources/exampleresources.pro b/examples/exampleresources/exampleresources.pro
index 9f3d394ef..90c733046 100644
--- a/examples/exampleresources/exampleresources.pro
+++ b/examples/exampleresources/exampleresources.pro
@@ -32,4 +32,5 @@ OTHER_FILES += \
assets/chest/* \
assets/houseplants/* \
assets/metalbarrel/* \
- assets/cubemaps/*
+ assets/cubemaps/miramar/* \
+ assets/cubemaps/night/*
diff --git a/examples/skybox/Skybox.qml b/examples/skybox/Skybox.qml
index 504d3c347..8dc7ba7a2 100644
--- a/examples/skybox/Skybox.qml
+++ b/examples/skybox/Skybox.qml
@@ -45,6 +45,8 @@ import Qt3D.Render 2.0
Entity {
property alias cameraPosition: cameraTranslate.translation;
+ property string sourceDirectory: "qrc:/assets/cubemaps/miramar/miramar";
+ property string extension: ".webp"
property TextureCubeMap skyboxTexture: TextureCubeMap {
generateMipMaps: false
@@ -55,7 +57,12 @@ Entity {
y: WrapMode.ClampToEdge
z: WrapMode.ClampToEdge
}
- source: "qrc:/assets/cubemaps/miramar/miramar"
+ TextureImage { cubeMapFace: Texture.CubeMapPositiveX; source: sourceDirectory + "_posx" + extension }
+ TextureImage { cubeMapFace: Texture.CubeMapPositiveY; source: sourceDirectory + "_posy" + extension }
+ TextureImage { cubeMapFace: Texture.CubeMapPositiveZ; source: sourceDirectory + "_posz" + extension }
+ TextureImage { cubeMapFace: Texture.CubeMapNegativeX; source: sourceDirectory + "_negx" + extension }
+ TextureImage { cubeMapFace: Texture.CubeMapNegativeY; source: sourceDirectory + "_negy" + extension }
+ TextureImage { cubeMapFace: Texture.CubeMapNegativeZ; source: sourceDirectory + "_negz" + extension }
}
ShaderProgram {
@@ -68,11 +75,13 @@ Entity {
out vec3 texCoord0;
uniform mat4 mvp;
+ uniform mat4 inverseProjectionMatrix;
+ uniform mat4 inverseModelView;
void main()
{
- texCoord0 = vertexPosition;
- gl_Position = mvp * vec4(vertexPosition, 1.0);
+ texCoord0 = vertexPosition.xyz;
+ gl_Position = vec4(mvp * vec4(vertexPosition, 1.0)).xyww;
}
"
fragmentShaderCode: "
@@ -98,7 +107,6 @@ Entity {
Transform {
id: transform
- Scale { id: scaleTransform; scale: 1000.0 }
Translate { id: cameraTranslate; }
}
diff --git a/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp b/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp
index 33a64311c..563d82d11 100644
--- a/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp
+++ b/src/quick3d/imports/render/qt3dquick3drenderplugin.cpp
@@ -186,7 +186,7 @@ void Qt3DQuick3DRenderPlugin::registerTypes(const char *uri)
qmlRegisterExtendedType<Qt3D::QTexture2D, Qt3D::Render::Quick::Quick3DTextureExtension>(uri, 2, 0, "Texture2D");
qmlRegisterExtendedType<Qt3D::QTexture2DArray, Qt3D::Render::Quick::Quick3DTextureExtension>(uri, 2, 0, "Texture2DArray");
qmlRegisterExtendedType<Qt3D::QTexture3D, Qt3D::Render::Quick::Quick3DTextureExtension>(uri, 2, 0, "Texture3D");
- qmlRegisterExtendedType<Qt3D::QTextureCubeMap, Qt3D::Render::Quick::Quick3DTextureCubeMapExtension>(uri, 2, 0, "TextureCubeMap");
+ qmlRegisterExtendedType<Qt3D::QTextureCubeMap, Qt3D::Render::Quick::Quick3DTextureExtension>(uri, 2, 0, "TextureCubeMap");
qmlRegisterExtendedType<Qt3D::QTextureCubeMapArray, Qt3D::Render::Quick::Quick3DTextureExtension>(uri, 2, 0, "TextureCubeMapArray");
qmlRegisterExtendedType<Qt3D::QTexture2DMultisample, Qt3D::Render::Quick::Quick3DTextureExtension>(uri, 2, 0, "Texture2DMultisample");
qmlRegisterExtendedType<Qt3D::QTexture2DMultisampleArray, Qt3D::Render::Quick::Quick3DTextureExtension>(uri, 2, 0, "Texture2DMultisampleArray");