As the title suggests i have developed a view that is 3d isometric like diablo 2 you move around the same way and such, its still very early but you can view the demo here:
http://thetrials.game-host.org/tools/Tr ... v0_0_1.zip
please comment and let me know what you think.
NOTE: This is all written in VB.Net
Diablo/Diablo 2 Style Isometric View
Hi Irme!
Looks good so far!
<Superficial thought>
I think the camera should be a little higher if you are trying to mimic Diablo/Baldurs Gate etc. It seems a little 'low to the ground' to me (only if you are trying to exactly copy Diablo, that is!)..
</Superficial thought>
Not sure about the skybox, though!
Best of luck - It's good to see others using .NET with Irrlicht!
Looks good so far!
<Superficial thought>
I think the camera should be a little higher if you are trying to mimic Diablo/Baldurs Gate etc. It seems a little 'low to the ground' to me (only if you are trying to exactly copy Diablo, that is!)..
</Superficial thought>
Not sure about the skybox, though!
Best of luck - It's good to see others using .NET with Irrlicht!
Thanks mikeyj, i too had the thought about the camera being a little to low - i will prolly start messing with it more, when i get acutal people rendering instead of a ball.
The skybox was somethign i just kinda threw in at the last second so that it wasnt floating on a black nothing i'll make it look purdy eventually
The skybox was somethign i just kinda threw in at the last second so that it wasnt floating on a black nothing i'll make it look purdy eventually
-
- Posts: 41
- Joined: Sat Jan 15, 2005 8:03 pm
- Contact:
Okay here is the code - its actually really simple.
cam is the variable of the camera that will be moving.
vec is the a vector3d variable that gets passed into my sub that is the current position of the player node.
the 150s are the offset values that i have chosen, you can alter them all you want to change your iso view for diff angles.
this is what i work and its clean and clear ive had no problems with it. if you wanna see it in action head over to thetrials.game-host.org and download the current version.
Code: Select all
Public Sub MoveCamera(ByVal vec As Vector3D)
vec.Y += 150
vec.X += 150
vec.Z += 150
cam.Position = vec
End Sub
vec is the a vector3d variable that gets passed into my sub that is the current position of the player node.
the 150s are the offset values that i have chosen, you can alter them all you want to change your iso view for diff angles.
this is what i work and its clean and clear ive had no problems with it. if you wanna see it in action head over to thetrials.game-host.org and download the current version.
-
- Posts: 41
- Joined: Sat Jan 15, 2005 8:03 pm
- Contact:
thank irme
show this code
Public Sub MoveCamera(ByVal vec As Vector3D)
vec.Y += 150
vec.X += 150
vec.Z += 150
cam.Position = vec
End Sub
End Module
Public Class MyEventReceiver
Implements IEventReceiver
Public Function OnEvent(ByVal e As [Event]) As Boolean Implements IEventReceiver.OnEvent
If e.Type = EventType.KeyInput Then
'37=leftkey,38=upkey,39=rightkey,40=downkey,
If e.Key = 27 Then End
If e.Key = 38 Then Xc = Xc - 4
If e.Key = 40 Then Xc = Xc + 4
MoveCamera(New Vector3D(Xc, Yc, Zc))
Return True
End If
Return False
End Function
End Class
it s good of no
show this code
Public Sub MoveCamera(ByVal vec As Vector3D)
vec.Y += 150
vec.X += 150
vec.Z += 150
cam.Position = vec
End Sub
End Module
Public Class MyEventReceiver
Implements IEventReceiver
Public Function OnEvent(ByVal e As [Event]) As Boolean Implements IEventReceiver.OnEvent
If e.Type = EventType.KeyInput Then
'37=leftkey,38=upkey,39=rightkey,40=downkey,
If e.Key = 27 Then End
If e.Key = 38 Then Xc = Xc - 4
If e.Key = 40 Then Xc = Xc + 4
MoveCamera(New Vector3D(Xc, Yc, Zc))
Return True
End If
Return False
End Function
End Class
it s good of no
First off - make sure you use the code segments to post code.
try using select statements - i've found they work better for things like this.
also, if you dont have a point of reference in the scene you wont be able to tell if it's moveing or not - but this should work - if it doesnt let me know.
Code: Select all
Public Sub MoveCamera(ByVal vec As Vector3D)
vec.Y += 150
vec.X += 150
vec.Z += 150
cam.Position = vec
End Sub
End Module
Public Class MyEventReceiver
Implements IEventReceiver
Public Function OnEvent(ByVal e As [Event]) As Boolean Implements
IEventReceiver.OnEvent
select case e.type
case eventtype.keyinput
select case e.key
case 27
End
case 38
Xc -= 4
case 40
Xc += 4
end select
MoveCamera(New Vector3d(Xc,Yx,Zc)
return true
end select
return false
end function
end class
also, if you dont have a point of reference in the scene you wont be able to tell if it's moveing or not - but this should work - if it doesnt let me know.