어제 물리엔진 자랑 올린사람임 ㅎ
이건 예전에 만든건데
소프트웨어 렌더링이라고 하드웨어 그래픽 api안쓰고 cpu단에서 렌더링하는거임.
예전에 공부용으로 만들어봤음ㅎ
이것도 html canvas + vanilla js로 만듦.
사실 c++에 sdl로 만드려고 했는데 자바스크립트로 만들면 링크만 주고 데모 플레이할 수 있어서
그 점이 좋아보여서 공부할도겸 자바스크립트로 만들어봤음
프레임은 드럽게 안나옴 c++로 만들었으면 프레임 한 5배는 잘 나올듯..
이거 만들면서 제일 어려웠던 부분이 clipping이었고 래스터라이징 자체는 그렇게 어렵진 않더라.
vertex, geometry, fragment 쉐이더 스테이지, 노말맵핑, phong shading, post processing
이정도 렌더링 테크닉까지 구현함
더이상은 렉걸려서 못하겠더라..
아래 링크에서 체험가능
렉걸리니까 똥컴은 들어가지 마삼 ㅜ
내 cpu는 i7 7700인데 200x150 해상도일때 한 50프레임 나옴 ㅋㅋㅋ
800x600은 7프레임 나온다 ㅋㅋㅋㅋ
개멋있네 어떤 거 보면서 공부했음??
그냥 구글링..
훌륭합니다 추천 삼천개 드립니다 ! HTML5 ^^^
웹어셈블리로 속도 올리는 것은 어떰?
c++로 나중에 포팅할 생각은 있음 ㅎ 그때 생각나면 wasm도 한번 써봐야겠당
미쳤다
Z버퍼도 구현했음? 나도 소프트웨어렌더링 했었는데 폴리곤 두개 겹칠때 z버퍼 없어서 래스터라이징 할때 보기 흉하게 되더라고 ,
사실상 depth buffering 없으면 3d 렌더링 불가능..
그지 나는 너무 느려질것 같아서 그냥 폴리곤 평균 깊이? 값 구해서 뒤쪽부터 그렸는데 이게 문제가 직각일땐 문제가 없는데 좀 복잡한 물체는 간혹 튀는 폴ㄹㄹ곤이 생겨서 거기까지만 하고 포기함 형은 무슨 뒤쪽 프로레스까지 다해놨네 ㅋ 대단함 ,
근데 depth buffering이 그렇게 어려운 개념이 아닌데? 픽셀길이만큼 똑같은 크기 배열 만들어놓고 view space 상의 z값 저장했다가 비교하면 그만임..
와 왤케 고수임 ㄷㄷ
ㄷㄷ 몇살임?
이게머야
저놈의 블랜더 원숭이대가리는 어디에도 잇네
수학과 대학원생이신가..
모전시절정화
허미 시팔 족고수네