VanQussong
'DirectX11' 카테고리의 글 목록

DirectX11

DirectX11/AR

AR50_ClassNote_6

24/03/27 1교시 주제 : Noise Texture 를 활용하여 파티클 랜덤하게 생성하기 작업 내용 : Noise Texture 를 활용하여 전체 파티클 객체중 일부만 랜덤하게 생성하기 (파티클의 2가지 문제점 해결완료) 2교시 주제 : 파티클 기능 구현 (색상, 크기, 수명, etc...) 작업 내용 : ParticleModule 구조체 선언, Particle Module 정보를 받아줄 Buffer 추가 파티클 Spawn 모듈 적용하여 파티클 생성실습 Next Note

DirectX11/AR

AR50_ClassNote_5

24/03/26 1교시 주제 : Atomic Function 활용하여 원하는 개수만큼 파티클 활성화하기 작업 내용 : InterlockAdd() -> InterlockExchange() 으로 보완 2교시 주제 : 멀티 쓰레드 환경 회차 동기화 맞춰주기 , 뷸규칙성 예제 구현 작업 내용 : InterlockExchange() -> InterlockCompareExchange() 으로 보완 noise Texture 로드하여 불규칙성 구현 Next Note AR50_ClassNote_6 24/03/27 1교시 주제 : Noise Texture 를 활용하여 파티클 랜덤하게 생성하기 작업 내용 : Noise Texture 를 활용하여 전체 파티클 객체중 일부만 랜덤하게 생성하기 (파티클의 2가지 문제점 해결완료)..

DirectX11/AR

AR50_ClassNote_4

24/03/25 1교시 주제 : Compute Shader (CS) 작성 완료 맟 기능 마무리 작업 내용 : ParticleTickCS 클래스 코드 왼성 및 Particle 객체 움직여보기 Compute Shader의 스레드/그룹 개수 : Compute Shader는 멤버로 "그룹 당 스레드 개수" 멤버와 "그룹 개수"멤버를 가지고 있다. 그룹 당 스레드 개수의 경우 생성자 호출시 들어오는 인자로 값이 초기화되며, 그룹 개수는 CalculateGroupNum() 함수에 의해 업데이트 된다. CalculateGroupNum() 함수의 경우 자식 객체에서 오버라이드한다. 가로(x)방향으로 32개의 스레드를 지원하도록 설정했으며, ParticleTick 셰이더 코드와 셰이더 실행시키는 부분의 싱크를 맞춰 줌 ..

DirectX11/AR

AR50_ClassNote_3

24/03/22 1교시 주제 : Geometry Shader 완성하기 작업 내용 : Geometry Shader 완성, Billboard 기능 구현 Geometry Shader 를 통해 얻을 수 있는 장점 : 비활성화 처리한 파티클에 대한 렌더링 파이프라인에 대한 작업을 GS 단계에서 중단 가능 -> 반복문의 continue 기능 Point Mesh -> Rect Mesh : 중심점에 해당하는 Point Mesh의 좌표를 기준으로 View Space에서 정점(Vertex)을 확장시켜 자연스럽게 Billboard 처리가 되도록 함 Vertex Shader의 존재 이유 : GS에서 좌표 변환 작업을 전부 해줌으로 VS에선 input 값으로 들어온 Vertex 정보를 output으로 GS에 전달해주는 역할만 ..

DirectX11/AR

AR50_ClassNote_2

24/03/21 1교시 주제 : Particle System 렌더링 개선 작업 내용 : 인스턴싱을 통한 렌더링 최적화 (DrawIndexedInstanced) SV_InstanceID 시멘틱 추가 FOG 시멘틱 추가 프레임 드랍 : 현재 프레임 출력 전 후로 프레임 차이가 많이난다. 이는 파티클이 많을수록 더 심해진다. ParticleSystem의 Render()의 반복문에서 "GetMesh()->render()"로 모든 파티클을 매 프레임마다 새로 그려주기 때문이다. 렌더링 부분을 최적화 해서 프레임 드랍률을 낮춰야한다. 최적화) 인스턴싱 (Instancing) : 인스턴싱이란 동일한 객체(오브젝트)를 한 화면에 여러개 렌더링 시킬 경우 한번의 DP Call로 처리 하는 방식을 말한다. (Draw Pr..