Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 2983 → Rev 2984

/programs/demos/3DS/BUMP_TEX.INC
1559,18 → 1559,18
push dword .tx1 ; .ctx
push dword .ty1 ; .cty
push edi ; .c_scr
;if Ext = SSE2
; mov eax,TEXTURE_SIZE
; movd xmm1,eax
; shufps xmm1,xmm1,0
; push dword TEX_X
; push dword -TEX_X
; push dword 1
; push dword -1
; movups xmm2,[esp]
; movd xmm3,.bmap
; shufps xmm3,xmm3,0
;end if
if Ext = SSE2
mov eax,TEXTURE_SIZE
movd xmm1,eax
shufps xmm1,xmm1,0
push dword TEX_X
push dword -TEX_X
push dword 1
push dword -1
movups xmm2,[esp]
movd xmm3,.bmap
shufps xmm3,xmm3,0
end if
 
if Ext>=MMX
movq mm7,.cty
1602,58 → 1602,65
shl eax,TEX_SHIFT
add esi,eax ;- ; esi - current bump map index
 
;if Ext = SSE2
if Ext = SSE2
 
movd xmm0,esi
shufps xmm0,xmm0,0
paddd xmm0,xmm2
pand xmm0,xmm1
paddd xmm0,xmm3
 
movd ebx,xmm0
movzx eax,byte[ebx]
;
; movd xmm0,esi
; shufps xmm0,xmm0,0
; paddd xmm0,xmm2
; pand xmm0,xmm1
; paddd xmm0,xmm3
;
; movd ebx,xmm0
; movzx eax,byte[ebx]
;
; shufps xmm0,xmm0,11100001b
; movd ebx,xmm0
; movzx ebx,byte[ebx]
; sub eax,ebx
psrldq xmm0,4
movd ebx,xmm0
movzx ebx,byte[ebx]
sub eax,ebx
;
; shufps xmm0,xmm0,11111110b
; movd ebx,xmm0
; movzx edx, byte [ebx]
psrldq xmm0,4
movd ebx,xmm0
movzx edx, byte [ebx]
;
; shufps xmm0,xmm0,11111111b
; movd ebx,xmm0
; movzx ebx, byte [ebx]
; sub edx,ebx
psrldq xmm0,4
movd ebx,xmm0
movzx ebx, byte [ebx]
sub edx,ebx
;
;else
mov ebx,esi
dec ebx
else
; mov ebx,esi
; dec ebx
lea ebx,[esi-1]
and ebx,TEXTURE_SIZE
add ebx,.bmap
movzx eax,byte [ebx]
 
mov ebx,esi
inc ebx
; mov ebx,esi
; inc ebx
lea ebx,[esi+1]
and ebx,TEXTURE_SIZE
add ebx,.bmap
movzx ebx,byte [ebx]
sub eax,ebx
 
mov ebx,esi
sub ebx,TEX_X
; mov ebx,esi
; sub ebx,TEX_X
lea ebx,[esi-TEX_X]
and ebx,TEXTURE_SIZE
add ebx,.bmap
movzx edx,byte [ebx]
 
mov ebx,esi
add ebx,TEX_X
; mov ebx,esi
; add ebx,TEX_X
lea ebx,[esi+TEX_X]
and ebx,TEXTURE_SIZE
add ebx,.bmap
movzx ebx,byte [ebx]
sub edx,ebx
;end if
end if
 
; eax - horizontal sub modificated x coord
; edx - vertical sub modificated y coord