Include "xors3d.bb"
xGraphics3D 1024,768,32,False,True
xSetBuffer xBackBuffer()
Camera = xCreateCamera()
xPositionEntity Camera,0,0,-10
Hole1=xLoadSprite("image.bmp")
xHideEntity Hole1
xCreateLight%()
Cube = xCreateCube()
xEntityPickMode Cube,2
While Not xKeyHit(1)
xTurnEntity Cube,0.2,0.4,0.3
If xMouseHit(1) Then
xCameraPick(Camera,xMouseX(),xMouseY())
If xPickedEntity() <> 0 Then
MakeHole(Hole1,5)
End If
End If
xRenderWorld
xText 5,5,"xPickedNX : "+(-xPickedNX())
xText 5,25,"xPickedNY : "+(-xPickedNY())
xText 5,45,"xPickedNZ : "+(-xPickedNZ())
xFlip
Wend
End
Function MakeHole(hole%,maxdecals%)
ent=xPickedEntity()
hole=xCopyEntity(hole)
xSpriteViewMode hole,2
xScaleSprite hole,0.1,0.1
xPositionEntity hole,xPickedX(),xPickedY(),xPickedZ(),True
xAlignToVector(hole,-xPickedNX(),-xPickedNY(),-xPickedNZ(),3)
xMoveEntity hole,0,0,-0.05
xEntityParent hole,ent
If xCountChildren(ent)>maxdecals Then xFreeEntity xGetChild(ent,0)
End Function
вот так все прекрасно работает, но если парентить до выравнивания, спрайты выворачиваются, как могут, но не как нужно..