1 |
Attribute VB_Name = "Module_Main" |
2 |
Option Explicit |
3 |
' |
4 |
|
5 |
Public Function CreateLitVertex(X As Single, Y As Single, Z As Single, Colour As Long, Specular As Long, tU As Single, tV As Single) As LITVERTEX |
6 |
|
7 |
With CreateLitVertex |
8 |
|
9 |
.X = X |
10 |
.Y = Y |
11 |
.Z = Z |
12 |
.Color = Colour |
13 |
.Specular = Specular |
14 |
.tU = tU |
15 |
.tV = tV |
16 |
|
17 |
End With |
18 |
|
19 |
End Function |
20 |
|
21 |
Public Function MakeVector(X As Single, Y As Single, Z As Single) As D3DVECTOR |
22 |
|
23 |
With MakeVector |
24 |
|
25 |
.X = X |
26 |
.Y = Y |
27 |
.Z = Z |
28 |
|
29 |
End With |
30 |
|
31 |
End Function |
32 |
|
33 |
Public Sub Main() |
34 |
|
35 |
Form_Start.Show |
36 |
Load Form_Debug |
37 |
|
38 |
End Sub |
39 |
|
40 |
Public Function GetNormal(v0 As D3DVECTOR, v1 As D3DVECTOR, v2 As D3DVECTOR) As D3DVECTOR |
41 |
|
42 |
Dim v01 As D3DVECTOR, v02 As D3DVECTOR, vNorm As D3DVECTOR |
43 |
|
44 |
'1. Get the vectors 0->1 and 0->2 |
45 |
D3DXVec3Subtract v01, v1, v0 |
46 |
D3DXVec3Subtract v02, v2, v0 |
47 |
|
48 |
'2. Get the cross product |
49 |
D3DXVec3Cross vNorm, v01, v02 |
50 |
|
51 |
'3. Normalize this vector |
52 |
D3DXVec3Normalize vNorm, vNorm |
53 |
|
54 |
'4. Return the value: |
55 |
GetNormal = vNorm |
56 |
|
57 |
End Function |
58 |
|
59 |
Public Function CreateD3DColorVal(A As Single, R As Single, G As Single, B As Single) As D3DCOLORVALUE |
60 |
|
61 |
With CreateD3DColorVal |
62 |
|
63 |
.A = A |
64 |
.R = R |
65 |
.G = G |
66 |
.B = B |
67 |
|
68 |
End With |
69 |
|
70 |
End Function |
71 |
|
72 |
Public Function Benchmark(lPointer) As Long |
73 |
|
74 |
Static colBenchmarks As New Collection |
75 |
|
76 |
If lPointer > 0 Then |
77 |
|
78 |
Benchmark = GetTickCount - colBenchmarks(lPointer) |
79 |
' colBenchmarks.Remove lPointer |
80 |
|
81 |
Else |
82 |
|
83 |
Benchmark = colBenchmarks.Count + 1 |
84 |
colBenchmarks.Add GetTickCount |
85 |
|
86 |
End If |
87 |
|
88 |
End Function |
89 |
|
90 |
Public Function UnQuote(strTerm As String) As String |
91 |
|
92 |
UnQuote = Replace(strTerm, """", "") |
93 |
|
94 |
End Function |