공간에서 여러 개의 점을로드하고 렌더링하며 간단한 3D 작업 (해당 지점 선택, & 뷰포트 이동)을 할 수있는 응용 프로그램을 찾고 있습니다.간단한 3D 편집기/뷰어
내 응용 프로그램의 기초로 사용하려면 소스를 사용할 수 있어야합니다.
공간에서 여러 개의 점을로드하고 렌더링하며 간단한 3D 작업 (해당 지점 선택, & 뷰포트 이동)을 할 수있는 응용 프로그램을 찾고 있습니다.간단한 3D 편집기/뷰어
내 응용 프로그램의 기초로 사용하려면 소스를 사용할 수 있어야합니다.
이 문제를 해결하려면 directX를 사용할 수 있습니다. 나는 델파이와 directX를 사용하여 이것을했다. C#을 사용하여 구현할 수도 있습니다. 당신이 좋아하는 같은 TEXTFILE 또는 이진 파일을 읽어
당신은이 작업을 수행 할 수있는 공간에서 점의 무리를로드하고 버퍼에 저장 할 수
.
TD3DXVector3 temppt = D3DXVector3(X,Y,Z);
여기서 TD3DXVector3은 directX 형식입니다.
것은 그들에게 렌더링을위한
렌더링, 당신은 점, 선 또는 삼각형을 렌더링 할 수있는 사용하는 방법 에 IDirect3DDevice9의의 DrawPrimitive,있다.
g_pd3dDevice.DrawPrimitive(D3DPT_TRIANGLELIST,0,count);
여기에서 Count는 그릴 삼각형의 수입니다.
같은 점을 선택
는 회전 & 이동 뷰포트Allegro 라이브러리는 단지 2d를 제외하고는 사용하기가 더 쉽지만 DirectX에 대한 3D 인터페이스가있을 수 있습니다. 당신은 C++을 알아야합니다. 임의의 픽셀에 대한 초기화 파일을 작성합니다.
allegro.cc에서 라이브러리를 가져 와서 Visual Studio를 사용하여 컴파일 할 수 있습니다.
편집 : 예를 들어 allegroGL 예. OpenGL과 결합 된 알레그로. http://www.allegro.cc/forums/thread/589211
#include <conio.h>
#include <stdlib.h>
#include "allegro.h"
int main()
{
int x,y,x1,y1,x2,y2;
int red, green, blue, color;
allegro_init();
install_keyboard();
srand(time(NULL));
int ret = set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640,480,0,0);
if (ret != 0)
{
allegro_message(allegro_error);
return 0;
}
//textprintf(screen, font, 0,0,15,"Pixels program - %dx%d - press esc to quit", SCREEN_W, SCREEN_H);
while(!key[KEY_ESC])
{
x = 10+rand()%(SCREEN_W - 20);
y = 10+rand()%(SCREEN_H - 20);
red = rand() % 255;
green = rand() % 255;
blue = rand() % 255;
color = makecol(red,green,blue);
putpixel(screen,x,y,color);
}
allegro_exit();
}
END_OF_MAIN();
는 여러 오픈 소스 3D 에디터가 있습니다,하지만 당신은 그들 대부분이 특정 3D 엔진과 연관되어 있음을 확인할 수 있습니다 (즉 irrEdit =>으로 Irrlicht).
블렌더가 있지만, 원하는 코드를 찾기에는 너무 복잡하다고 생각됩니다. 인터넷 검색의 몇 분에서
, 내가 포함 된 소스 코드와 3D 편집기의 간단한 예를 찾을 수 없어,하지만 난 도움이 될 수있는이를 발견했다 :http://Clara.io이 있지만 소스를 사용할 수는 없지만 무료이며 사용자 지정 형식으로 가져 오기/내보내기 할 수있는 플러그 인을 쉽게 작성할 수 있으며 장면에 고유 한 개체를 추가 할 수도 있습니다.