diff options
author | Janne Kangas <janne.kangas@qt.io> | 2018-03-13 15:04:40 +0200 |
---|---|---|
committer | Janne Kangas <janne.kangas@qt.io> | 2018-04-03 10:09:00 +0000 |
commit | ce2b7eb3301aac652cf8d12df58e5629e491995a (patch) | |
tree | bc814d4ff72413dcb2c8a76e70d8cf704a41289d /examples | |
parent | 97590e24b8e47897d5651f42353fc60365abf9dd (diff) |
Expand datainput example
Also, add controlledproperty attribute to Material so diffuse color can
be controlled in the example.
Change-Id: Icbb696f478a4907cfe0933f46a92ff63c6cc1820
Task-Id: QT3DS-1328
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Diffstat (limited to 'examples')
3 files changed, 140 insertions, 20 deletions
diff --git a/examples/studio3d/qmldatainput/presentation/datainput.uia b/examples/studio3d/qmldatainput/presentation/datainput.uia index 5c2b4545..d2522cde 100644 --- a/examples/studio3d/qmldatainput/presentation/datainput.uia +++ b/examples/studio3d/qmldatainput/presentation/datainput.uia @@ -1,16 +1,22 @@ -<?xml version="1.0" encoding="UTF-8"?> -<application xmlns="http://qt.io/qt3dstudio/uia"> - <assets initial="datainput"> - <presentation id="datainput" src="datainput.uip"/> - <dataInput name="rangeInput" type="Ranged Number" min="0" max="360"/> - </assets> - <statemachine ref="#logic"> - <visual-states> - <state ref="Initial"> - <enter> - <goto-slide element="main:Scene" rel="next"/> - </enter> - </state> - </visual-states> - </statemachine> +<?xml version="1.0" encoding="UTF-8" ?> +<application> + <assets initial="datainput"> + <presentation id="datainput" src="datainput.uip"/> + <dataInput name="rangeInput" type="Ranged Number" min="0" max="360"/> + <dataInput name="vec3Input" type="Vector3"/> + <dataInput name="floatInput" type="Float"/> + <dataInput name="stringInput" type="String"/> + <dataInput name="variantInput" type="Variant"/> + <dataInput name="vec3Input2" type="Vector3"/> + <dataInput name="vec3Input3" type="Vector3"/> + </assets> + <statemachine ref="#logic"> + <visual-states> + <state ref="Initial"> + <enter> + <goto-slide element="main:Scene" rel="next"/> + </enter> + </state> + </visual-states> + </statemachine> </application> diff --git a/examples/studio3d/qmldatainput/presentation/datainput.uip b/examples/studio3d/qmldatainput/presentation/datainput.uip index c13558d1..a5a6fea3 100644 --- a/examples/studio3d/qmldatainput/presentation/datainput.uip +++ b/examples/studio3d/qmldatainput/presentation/datainput.uip @@ -9,23 +9,53 @@ <Layer id="Layer" > <Camera id="Camera" /> <Light id="Light" /> - <Text id="Text" controlledproperty="rangeInput textstring" /> + <Text id="Text" /> <Text id="Text2" /> + <Model id="Cone" > + <Material id="Default" name="Default" /> + </Model> + <Model id="Cube" > + <Material id="Default_001" name="Default" /> + </Model> + <Model id="Cylinder" > + <Material id="Default_002" name="Default" /> + </Model> + <Text id="Text5" /> + <Text id="Text6" /> + <Text id="Text8" /> + <Model id="Cube2" > + <Material id="Default_003" name="Default" /> + </Model> + <Text id="Text3" /> + <Text id="Text4" /> </Layer> </Scene> </Graph> <Logic > <State name="Master Slide" component="#Scene" > <Add ref="#Layer" /> - <Add ref="#Camera" /> - <Add ref="#Light" /> + <Add ref="#Camera" controlledproperty="vec3Input3 rotation" pivot="0 0 0" rotation="0 0 0" /> + <Add ref="#Light" castshadow="True" controlledproperty="vec3Input lightdiffuse" lightdiffuse="1 0 0" position="-350.984 -229.258 -30" /> <State id="Scene-Slide1" name="Slide1" initialplaystate="Pause" > - <Add ref="#Text" name="Text" font="TitilliumWeb-Regular" position="-0.000391006 46.1884 0" scale="1.0 1.0 1.0" size="48" textstring="0" > + <Add ref="#Text" name="Text" controlledproperty="stringInput textstring" font="TitilliumWeb-Regular" position="15.2141 -9.98814 -113.498" scale="1 1 1" size="48" textstring="0" > <AnimationTrack property="rotation.x" type="EaseInOut" >0 0 0 0 10 0 0 0</AnimationTrack> <AnimationTrack property="rotation.y" type="EaseInOut" >0 0 0 0 10 0 0 0</AnimationTrack> <AnimationTrack property="rotation.z" type="EaseInOut" >0 0 0 0 10 -360 0 0</AnimationTrack> </Add> - <Add ref="#Text2" name="Text2" font="TitilliumWeb-Regular" position="2.88678 207.846 0" scale="1 1 1" size="48" textstring="Text and animation via DataInput:" /> + <Add ref="#Text2" name="Text2" controlledproperty="" font="TitilliumWeb-Regular" position="28.8676 90.9325 0" scale="1 1 1" size="26" textstring="Text control Rotation animation control via datainput timeline control" /> + <Add ref="#Cone" name="Cone" controlledproperty="vec3Input scale" position="-417.135 -225.166 0" sourcepath="#Cone" /> + <Add ref="#Default" /> + <Add ref="#Cube" name="Cube" controlledproperty="floatInput opacity" opacity="60" position="-135.677 -173.205 0" sourcepath="#Cube" /> + <Add ref="#Default_001" /> + <Add ref="#Cylinder" name="Cylinder" controlledproperty="variantInput opacity" position="131.347 -180.422 0" sourcepath="#Cylinder" /> + <Add ref="#Default_002" /> + <Add ref="#Text5" name="Text5" font="TitilliumWeb-Regular" position="-152.998 -290.118 0" textstring="Opacity control" /> + <Add ref="#Text6" name="Text6" font="TitilliumWeb-Regular" position="135.678 -300.019 -8.28656" textstring="Opacity control (Variant type)" /> + <Add ref="#Text8" name="Text8" font="TitilliumWeb-Regular" position="-428.683 -290.118 0" textstring="Scale control" /> + <Add ref="#Cube2" name="Cube2" controlledproperty="vec3Input rotation" position="409.919 -177.535 0" sourcepath="#Cube" /> + <Add ref="#Default_003" controlledproperty="vec3Input2 diffuse" /> + <Add ref="#Text3" name="Text3" font="TitilliumWeb-Regular" position="434.456 -304.552 0" textstring="Rotation control Diffuse color control" /> + <Add ref="#Text4" name="Text4" font="TitilliumWeb-Regular" position="-381.051 290.118 0" textstring="Directional light color and Camera xy rotation controlled via Datainput" /> </State> </State> </Logic> diff --git a/examples/studio3d/qmldatainput/qml/qmldatainput/main.qml b/examples/studio3d/qmldatainput/qml/qmldatainput/main.qml index 34dec759..0ffa1ed1 100644 --- a/examples/studio3d/qmldatainput/qml/qmldatainput/main.qml +++ b/examples/studio3d/qmldatainput/qml/qmldatainput/main.qml @@ -67,6 +67,12 @@ Item { anchors.fill: parent property int inputNumber: 0 + property vector3d inputVec3: Qt.vector3d(0, 0, 0) + property vector3d inputVec3_2: Qt.vector3d(0, 0, 0) + property vector3d inputVec3_3: Qt.vector3d(0, 0, 0) + property string inputString: "" + property int inputFloat: 0.0 + property variant inputVariant: 0 // A changing property to demonstrate DataInput NumberAnimation { @@ -78,6 +84,60 @@ Item { loops: Animation.Infinite running: true } + NumberAnimation { + target: studio3D + property: "inputFloat" + duration: 9000 + from: 50 + to: 100 + loops: Animation.Infinite + running: true + } + Vector3dAnimation { + target: studio3D + property: "inputVec3" + duration: 12000 + from: Qt.vector3d(0.3, 0.5, 0.5) + to: Qt.vector3d(1.0, 1.0, 1.0) + loops: Animation.Infinite + running: true + } + Vector3dAnimation { + target: studio3D + property: "inputVec3_2" + duration: 2000 + from: Qt.vector3d(0.1, 0.1, 0.3) + to: Qt.vector3d(1.0, 0.5, 1.0) + loops: Animation.Infinite + running: true + } + Vector3dAnimation { + target: studio3D + property: "inputVec3_3" + duration: 20000 + from: Qt.vector3d(-0.1, -0.1, 0.0) + to: Qt.vector3d(0.1, 0.1, 0.0) + loops: Animation.Infinite + running: true + } + NumberAnimation { + target: studio3D + property: "inputString" + duration: 20000 + from: 0 + to: 1 + loops: Animation.Infinite + running: true + } + NumberAnimation { + target: studio3D + property: "inputVariant" + duration: 8000 + from: 20 + to: 100 + loops: Animation.Infinite + running: true + } // ViewerSettings item is used to specify presentation independent viewer settings. ViewerSettings { @@ -94,6 +154,30 @@ Item { name: "rangeInput" value: studio3D.inputNumber } + DataInput { + name: "vec3Input" + value: studio3D.inputVec3 + } + DataInput { + name: "vec3Input2" + value: studio3D.inputVec3_2 + } + DataInput { + name: "vec3Input3" + value: studio3D.inputVec3_3 + } + DataInput { + name: "stringInput" + value: studio3D.inputString + } + DataInput { + name: "floatInput" + value: studio3D.inputFloat + } + DataInput { + name: "variantInput" + value: studio3D.inputVariant + } } //![1] } |