VanQussong
'분류 전체보기' 카테고리의 글 목록 (6 Page)

분류 전체보기

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 셰이더 코드와 셰이더 실행시키는 부분의 싱크를 맞춰 줌 ..

Win32API

Win32API_StudyNote_8

24/03/27 36화. Win32API Animation (1) 게임 제작을 위해 추가해야할 마지막 필수요소인 애니메이션을 구현해보자 CAnimator 클래스 : Animation 도 Collider와 마찬가지로 Component 로 만들거다. (CAnimator 클래스) Component 로 만드는 이유는 해당 기능을 가질 수동 있고 안 가질수도 있기 때문이다. CAnimator 객체를 소유하는 Object 객체가 사용할 애니메이션들을 관리하는 매니저 역할을 한다. 복사 생성자 와 깊은 복사 : Collider와 마찬가지로 Animator도 포인터(주소) 타입 멤버 변수이기에 복사생성자를 통해 Object 객체가 생성될 때, "깊은 복사"를 통해 복사되어야 한다. Animator 클래스 작성완료되면 ..

Win32API

Win32API_StudyNote_7

24/03/25 34화. Win32API Scene (1) 화면전환 : 현재 Start_Scene 만 화면에서 다루고 있는데 게임을 구현할땐, 여러 Scene을 자유롭게 전환할 수 있어야한다. 때문에 해당 기능을 구현 해본다. Scene 을 변경해주는 기능은 Scene을 관리하는 SceneMgr 클래스에서 수행해줘야한다. CScene::update() 함수는 Scene이 관리하는 Object 객체들의 update() 함수를 호출해주는 작업을 담당하기에 virtual 키워드를 붙이지 않았었다. 하지만 화면전환 관련으로 Scene의 자식객체들이 updata() 중 추가적으로 구현해야하는 기능이 추가되었기에 CScene::update() 함수를 가상함수로 전환한다. 가상함수로 전환했지만, 기본적으로 Scene..

Win32API

Win32API_StudyNote_6

24/03/24 31화. Win32API Collider 활용 & Event Manger (1) 충돌 이벤트 처리 : 충돌 이벤트에 대한 처리는 Object 마다 다를거다. 때문에 충돌 이벤트에 대한 처리는 충돌체를 가지고 있는 Object가 담당하도록 해줘야한다. 모든 객체의 부모 클래스인 CObject 클래스에 충돌 이벤트 처리 함수를 가상함수로 만들어둔다. 충돌체를 가지고 있는 자식 Object 클래스는 이를 override 하여 이벤트 발생시 수행할 작업을 구현해둔다. 충돌이 발생하면 Collider 클래스는 자신을 소유한 Object 클래스의 충돌 이벤트 함수를 호출해준다. 프레임 단위 동기화 처리 : 한 사건에 대해 동일 프레임 안에선 동일한 처리를 해줘야한다. 동일 프레임 안에서 코드 자체는..