主题:  shockware 3D例子---移动茶壶:

流星雨

职务:普通成员
等级:1
金币:0.0
发贴:79
注册:2001/12/11 20:11:00
#12001/12/12 20:24:56
移动茶壶例子:
global pickedModel
property pButtonPressed
property pLastPt
property pHeight
property pWidth
property pMember
property pSprite
property pModelTransform

--------------------------------------------------------------------------------
--Sprite Handlers---------------------------------------------------------------
--------------------------------------------------------------------------------

on beginSprite(me)

pSprite = sprite(me.spritenum)

pMember = pSprite.member

pAzimuth = 0
pElevation = 0

pButtonPressed = false
myRect = sprite(me.spriteNum).rect
pWidth = myRect.width
pHeight = myRect.height
end


on enterFrame(me)
if pButtonPressed then

if(pLastPt.locH <> the mouseH or pLastPt.locV <> the mouseV) then

deltaX = float(the MouseH - pLastPt.locH)
deltaY = float(pLastPt.locV-the MouseV)

pModelTransform.translate(deltaX,deltaY,0)

pLastPt = point(the MouseH, the MouseV)
end if
end if
end

on mouseDown(me)
pSprite = sprite(me.spritenum)
tOffset = point(pSprite.left, pSprite.top)
spriteToWorld = pSprite.camera.spriteSpaceToWorldSpace(the mouseLoc - tOffset)
pickedModel = pSprite.camera.ModelUnderLoc(the mouseLoc-tOffset)

if pickedModel<>void then
tModel = pMember.model(pickedModel.name)
pModelTransform = tModel.transform
pButtonPressed = true
pLastPt = clickLoc()
end if
put spriteToWorld into member "v"
put pickedModel into member "v2"
end

on mouseUp(me)
pButtonPressed = false
end

on mouseUpOutside(me)
pButtonPressed = false
end

on exitFrame
go to the frame
end

on mouseWithin

tOffset = point(sprite(1).left, sprite(1).top)
spriteToWorld = sprite(1).camera.spriteSpaceToWorldSpace(the mouseLoc - tOffset)
pickedModel = sprite(1).camera.ModelUnderLoc(the mouseLoc-tOffset)

if pickedModel <> void then
cursor 260
else
cursor -1
end if

end mouseWithin
需要编程;麻烦些,可测试过


顺便多说一句:谁能帮我crack一个软件:vr toolbox



我是小马

职务:普通成员
等级:3
金币:17.0
发贴:794
注册:2000/11/13 14:56:59
#22001/12/13 21:45:27
能否把例子贴上来?



另:论坛不希望公开讨论crack!
有问题可以私下交流!



hobo

职务:普通成员
等级:3
金币:1.0
发贴:903
注册:2001/9/17 14:47:11
#32001/12/14 12:16:12
crack是什么



流星雨

职务:普通成员
等级:1
金币:0.0
发贴:79
注册:2001/12/11 20:11:00
#42001/12/14 18:49:58
你这个网站怎么上传shockware3d""??



老张

职务:普通成员
等级:5
金币:10.0
发贴:2796
注册:2001/5/11 12:41:55
#52001/12/14 23:05:40
MAX的茶壶导出w3d文件,在D85中使用一个简单行为就可以了



流星雨

职务:普通成员
等级:1
金币:0.0
发贴:79
注册:2001/12/11 20:11:00
#62001/12/15 10:50:25
运用Library行为库是简单,那毕竟是别人的,程序无法阅读,灵活性较低,参数传递利用率较低,
不能做复杂行为,例如:移动茶壶不同位置发出不同的声音或其他行为。

运用Lingo做shockware3d是一个很好的选择。