스쳐는 정말 쉽지 않은 부분인것 같다 ㅜㅜ 뙇

 

리스트박스와 텍스쳐미리보기

그리고 제일 중요한 여러장의 멀티텍스쳐의 사용

그중 하나 쉽게 풀린게 없는듯하다.

 

정말 스스로 프로그래밍을 즐기지 못하면

못할짓이라는걸 작업하는 내내 다시한번 깨닿게 되었다.

정말 다행인것같다.

 

프로그래머가 아니라

그래픽 모델러를 목표로

향해가는듯한 이 기분은 뭘까 ㅋㅋ

 

'programming > direct3d' 카테고리의 다른 글

directx terrain 약 2주간 업데이트 사항  (0) 2024.07.26
dirextx xFile 띄우기  (0) 2024.07.26
directx 지형 알파 텍스쳐 입히기  (0) 2024.07.26
directx 지형 수정사항  (0) 2024.07.26
directx 지형 추가사항  (0) 2024.07.26
Posted by mainep
:

 

생각보다 시간이 오래걸렸다.

대충 알파값 넣으면 쉽게 될줄알았는데

여러장의 텍스쳐가 합쳐지는 SetTextureStageState에 있는 연산자를 이해해야한다.

 

프로젝트가 점점 산으로서의 구색을 갖추어

두덕리 온라인으로 진화중인것 같다.

 

다음 목표는 다수의 알파 텍스쳐를 사용하고

그것을 저장하고 로딩하는것이다 .

 

'programming > direct3d' 카테고리의 다른 글

dirextx xFile 띄우기  (0) 2024.07.26
directx 지형 알파 멀티텍스쳐의 복수 사용  (0) 2024.07.26
directx 지형 수정사항  (0) 2024.07.26
directx 지형 추가사항  (0) 2024.07.26
다이렉트x 3d 지형 - 맵툴  (0) 2024.07.26
Posted by mainep
:

 

for( DWORD i = 0; i < m_rCheckIBZ ; i++ )
{
if( intersect ) break;
for( DWORD k = 0; k < m_rCheckIBX ; k++)
{
if( intersect ) break;
long tempVB = rSNum + (((m_rIndexSizeZ) ) * i) + ( k * 3 ) - m_fixedRPoint;
static DWORD ibNum = 0;
if( tempVB < 0 ) { continue ; }
else if( tempVB >= ((long)m_rIndexTotalSize)-3 ) { break ; }
else { ibNum = tempVB ;}
if( IntersectTriangle( m_pickOrig, m_pickDir,
m_pReferVB[m_pReferIB[ibNum]], m_pReferVB[m_pReferIB[ibNum+1]], m_pReferVB[m_pReferIB[ibNum+2]],
&scale[0], &scale[1], &scale[2] ) )
{
m_pickPos = m_pickOrig + ( m_pickDir * scale[0] );
D3DXVECTOR2 transV(0.0f, 0.0f);
DWORD transX = 0, transZ = 0 ;
transV.x = m_pickPos.x / 8.0f * m_intervalRate + m_checkX ;
transV.y = m_pickPos.z / 8.0f * m_intervalRate - m_checkZ ;
transX = (DWORD)( ( transV.x < 0 ) ? transV.x * -1.0f : transV.x );
transZ = (DWORD)( ( transV.y < 0 ) ? transV.y * -1.0f : transV.y );
sNum = transX + transZ * m_vbSizeX ;


m_pLineVB->Lock( 0, 0, (void**)&pVertices, 0 ) ;
pVertices[0].v = m_pickPos ;
pVertices[1].v = D3DXVECTOR3( m_pickPos.x, m_maxminY, m_pickPos.z ) ;
m_pLineVB->Unlock() ;
rSNum = ( ibNum%2 == 0 ) ? ibNum : ibNum - 3 ;
intersect = TRUE ;
break;
}
}
}

 

 

최적화를위해 일반 메모리의 픽킹에서

실제 좌표를 이용해 해당 VB의 번호를 직접 구해냄

 

일반메모리의 참조 범위를

횡렬 리딩에서 범위 리딩으로 수정함

 

Posted by mainep
: