Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local kbVec3 = require 'vec3'
- local kbAnim = require 'anim'
- local kbModel = require 'widget.model'
- local kbSkybox = require 'widget.skybox'
- local kbWidget = require 'widget'
- local kbCamera = require 'widget.camera'
- local kbScreen = require 'screen'
- local kbEvent = require 'event'
- local kbAnim = require 'anim'
- local wStartingCamera = nil --widget.camera#camera
- -- Set an Optional Starting Camera Position
- local wStartingCameraPosition = kbVec3(0, 0, -0.808414)
- local wStartingCameraRotation = kbVec3(0, 0, 0.00)
- local wModelFilenames =
- {
- 'models/test_mock/left-sidebar.iqm'
- -- ,'models/jeep_grand_cherokee/jeep-low.iqm'
- } --#list<string>
- local wModelScales =
- {
- kbVec3(1, 1, 1)
- -- ,kbVec3(0.1, 0.1, 0.1)
- } --#list<vec3#vec3>
- local wModelRotations =
- {
- kbVec3(0, 0, 0)
- -- ,kbVec3(0, 180, 0)
- } --#list<vec3#vec3>
- local wModelPositions =
- {
- kbVec3(0.0, 0.0, 0.0)
- -- ,kbVec3( 0.0, 0.0, 0.0 )
- } --#list<vec3#vec3>
- local wModels = {} --#list<widget.model#model>
- wModels.model = nil --widget.model#model
- wModels.model_animation_count = nil --#number
- local function PlayAnimation(nIndex, bLoop)
- -- Get Animation Name
- local strAnimationName = wModels.model:get_animation_name(nIndex)
- -- Play Animation
- wModels.model:set_animation(strAnimationName, bLoop)
- end
- local function Main()
- -- all widgets have three arguments (scale, rotation, position) defined
- -- as vec3's. Here we just put the model in the origin with a scale of
- -- one.
- for nPos = 1, #wModelFilenames do
- wModels[nPos] = kbModel( wModelScales[nPos], wModelRotations[nPos], wModelPositions[nPos])
- wModels[nPos]:set_model( wModelFilenames[nPos] )
- end
- kbEvent.create(function() PlayAnimation(8) end, kbEvent.owners.key, kbEvent.types.released, kbEvent.scancodes.KB_1)
- kbEvent.create(function() PlayAnimation(9) end, kbEvent.owners.key, kbEvent.types.released, kbEvent.scancodes.KB_2)
- -- Camera Starting Position
- wStartingCamera = kbCamera( kbVec3.one(), wStartingCameraRotation, wStartingCameraPosition)
- kbScreen.set_camera(wStartingCamera)
- -- a skybox
- local skybox = kbSkybox(kbVec3.one(), kbVec3.zero(), kbVec3.zero())
- skybox:set_cubemap('night.sky')
- -- for environment reflections
- kbScreen.set_environment_cubemap('night.sky')
- end
- return
- {
- main = Main
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement