2009年9月25日 星期五

3D座標轉2D座標

3D轉2D?聽起來很簡單。可是發現裡面牽涉一堆陣列的時候頭就痛
這是研究結果
Vector3 screenSpace = graphics.GraphicsDevice.Viewport.Project(
Vector3.Zero, cameraProjectionMaxtrix, cameraViewMaxtrix, new Matrix(0.1f, 0.0f, 0.0f, 0.0f, 0.0f, 0.1f, 0.0f, 0.0f, 0.0f, 0.0f, 0.1f, 0.0f
, ship.position.X, ship.position.Y, ship.position.Z, 1.0f));

座標就在這裡出現
screenSpace.X ←怪物的X座標
screenSpace.Y ←怪物的Y座標

利用此座標,在怪物或是機械死亡的瞬間,繪出爆炸效果,就是爆破了

2 則留言: