VBcoders Guest



Don't have an account yet? Register
 


Forgot Password?



3D-Stars in a Form

by Mikael Rickan (1 Submission)
Category: Custom Controls/Forms/Menus
Compatability: Visual Basic 3.0
Difficulty: Unknown Difficulty
Date Added: Wed 3rd February 2021
Rating: (15 Votes)

Draws a nice 3D-Starfield in a Form (uses X,Y,Z positions)
width a very short code
Shades each star depending on the distance.

Assumes
Create an Timer for the form called Timer1
Side Effects
None (maybe some flickering)
API Declarations

Rate 3D-Stars in a Form

'
Dim X(100), Y(100), Z(100) As Integer
Dim tmpX(100), tmpY(100), tmpZ(100) As Integer
Dim K As Integer
Dim Zoom As Integer
Dim Speed As Integer
Private Sub Form_Activate()
Speed = -1
K = 2038
Zoom = 256
Timer1.Interval = 1
For i = 0 To 100
  X(i) = Int(Rnd * 1024) - 512
  Y(i) = Int(Rnd * 1024) - 512
  Z(i) = Int(Rnd * 512) - 256
Next i
End Sub
Private Sub Timer1_Timer()
For i = 0 To 100
  Circle (tmpX(i), tmpY(i)), 5, BackColor
  Z(i) = Z(i) + Speed
  If Z(i) > 255 Then Z(i) = -255
  If Z(i) < -255 Then Z(i) = 255
  tmpZ(i) = Z(i) + Zoom
  tmpX(i) = (X(i) * K / tmpZ(i)) + (Form1.Width / 2)
  tmpY(i) = (Y(i) * K / tmpZ(i)) + (Form1.Height / 2)
  Radius = 1
  StarColor = 256 - Z(i)
  Circle (tmpX(i), tmpY(i)), 5, RGB(StarColor, StarColor, StarColor)
  
Next i
End Sub

Download this snippet    Add to My Saved Code

3D-Stars in a Form Comments

No comments have been posted about 3D-Stars in a Form. Why not be the first to post a comment about 3D-Stars in a Form.

Post your comment

Subject:
Message:
0/1000 characters