Subversion Repositories Kolibri OS

Rev

Rev 5388 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5388 Rev 5393
Line 1... Line 1...
1
;
1
;
2
; Ôóíêöèè íóæíûå äëÿ îòîáðàæåíèÿ âîêñåëüíîãî îáúåêòà ÷åðåç áèáëèîòåêó tinygl
2
; Ôóíêöèè íóæíûå äëÿ îòîáðàæåíèÿ âîêñåëüíîãî îáúåêòà ÷åðåç áèáëèîòåêó tinygl
3
;
3
;
Line -... Line 4...
-
 
4
 
-
 
5
normal_gran_z1 equ -1.0
-
 
6
normal_gran_z0 equ  1.0
-
 
7
normal_gran_y1 equ -1.0
-
 
8
normal_gran_y0 equ  1.0
-
 
9
normal_gran_x1 equ -1.0
-
 
10
normal_gran_x0 equ  1.0
4
 
11
 
5
;ìàðîñ êîðåêòèðîâêè âåêòîðà íîðìàëè äëÿ çàêðóãëåíèÿ êðàéíèõ âîêñåëåé
12
;ìàðîñ êîðåêòèðîâêè âåêòîðà íîðìàëè äëÿ çàêðóãëåíèÿ êðàéíèõ âîêñåëåé
6
macro normal_gran param, gran
13
macro normal_gran param, gran
7
{
14
{
8
    mov dword[param],0.0
15
    mov dword[param],0.0
Line 571... Line 578...
571
		fxch
578
		fxch
Line 572... Line 579...
572
 
579
 
573
		;coord x
580
		;coord x
574
		fild dword[eax+vox_ogl_x0]
581
		fild dword[eax+vox_ogl_x0]
575
		fscale
-
 
576
		fchs
582
		fscale
577
		fst dword[eax+vox_ogl_x0]
583
		fst dword[eax+vox_ogl_x0]
578
		fsub st0,st2 ;äîáàâëÿåì êî âòîðîé òî÷êå ðàçìåð ìàñøòàáèðîâàííîé êóáè÷åñêîé ãðàíè
584
		fadd st0,st2 ;äîáàâëÿåì êî âòîðîé òî÷êå ðàçìåð ìàñøòàáèðîâàííîé êóáè÷åñêîé ãðàíè
579
		fstp dword[eax+vox_ogl_x1]
585
		fstp dword[eax+vox_ogl_x1]
580
		;coord y
586
		;coord y
581
		fild dword[eax+vox_ogl_y0]
587
		fild dword[eax+vox_ogl_y0]
582
		fscale
588
		fscale
Line 608... Line 614...
608
	fscale ;st0=1*2^st1 èëè 1*2^-1=1/2=0.5
614
	fscale ;st0=1*2^st1 èëè 1*2^-1=1/2=0.5
609
align 4
615
align 4
610
	@@:
616
	@@:
611
		;coord x
617
		;coord x
612
		fld dword[eax+vox_ogl_x0]
618
		fld dword[eax+vox_ogl_x0]
613
		fadd st0,st1 ;+0.5
619
		fsub st0,st1 ;-0.5
614
		fstp dword[eax+vox_ogl_x0]
620
		fstp dword[eax+vox_ogl_x0]
615
		fld dword[eax+vox_ogl_x1]
621
		fld dword[eax+vox_ogl_x1]
616
		fadd st0,st1 ;+0.5
622
		fsub st0,st1 ;-0.5
617
		fstp dword[eax+vox_ogl_x1]
623
		fstp dword[eax+vox_ogl_x1]
618
		;coord y
624
		;coord y
619
		fld dword[eax+vox_ogl_y0]
625
		fld dword[eax+vox_ogl_y0]
620
		fsub st0,st1 ;-0.5
626
		fsub st0,st1 ;-0.5
621
		fstp dword[eax+vox_ogl_y0]
627
		fstp dword[eax+vox_ogl_y0]
Line 1302... Line 1308...
1302
	pop edi eax
1308
	pop edi eax
1303
	.end_f:
1309
	.end_f:
1304
	ret
1310
	ret
1305
endp
1311
endp
Line 1306... Line -...
1306
 
-
 
1307
normal_gran_z1 equ -1.0
-
 
1308
normal_gran_z0 equ  1.0
-
 
1309
normal_gran_y1 equ  1.0
-
 
1310
normal_gran_y0 equ -1.0
-
 
1311
normal_gran_x1 equ -1.0
-
 
1312
normal_gran_x0 equ  1.0
1312
 
1313
align 4
1313
align 4
1314
p1 dd ?
1314
p1 dd ?
Line 1315... Line 1315...
1315
p2 dd ?
1315
p2 dd ?