https://github.com/Very-Real-Engine/ALEngine
GitHub - Very-Real-Engine/ALEngine: This is an GAME ENGINE made by 42 Very-Real-Engine Team.
This is an GAME ENGINE made by 42 Very-Real-Engine Team. - Very-Real-Engine/ALEngine
github.com
https://www.youtube.com/watch?v=cwIg2w3mOJ0
https://www.youtube.com/watch?v=ya1hKmkO8JY
https://www.youtube.com/watch?v=oJnp3A-QEsE
https://www.youtube.com/watch?v=M6dmDZbce60
https://www.youtube.com/watch?v=_ZHyU_WvnIw
완성해놓고 몇개의 씬을 만들어 유튜브에 올렸다.
하고싶은거는 많은데 시간은 없으니 막판에는 기능추가보다 완성도를 높이는 쪽으로 했다.
아쉬운 부분도 많고 하고싶은것도 많긴 하지만
그래도 4~5개월동안 진득하게 동료들과 엔진 프로젝트를 하니 전보다 훨씬 성장한게 느껴졌고
렌더링 분야에서 이제 좀 어떻게 파이프라인을 구성해야 좋을지 생각하는 사고가 길러진 것 같다.
우선 블로그 글부터 피드백을 하자면
이번 프로젝트는 블로그 글 쓰는데에 있어 gpt의 도움을 하나도 받지 않았다.
저번 프로젝트에서는 모든 글에 gpt 첨삭을 받았어서
아쉬운 부분이 많아서 그에 대한 피드백으로 약간 극단적으로 글에 있어서는 전혀 gpt를 사용하지 않아보았다.
장단이 있었는데
나는 플젝 진행하면서 내 블로그 글을 엄청 다시보는 편이라
내가 직접 쓰니깐 이전 작업에서 고민했던 것들이 다시 빠르게 리마인드 되서 공부는 엄청 잘되었다.
하지만 그러다보니 글이 점점 나만 알아보는 글이 된 것 같아서 이 부분도 아쉽다.
이 부분은 내 필력을 늘리면 될 일이다.
프로젝트에서는 피드백할게 너무 많다.
나는 렌더링분야라 이쪽만 조금 아쉬운 점을 뽑아보겠다.
우선 직전 도전과제인 인스터싱문제
처음부터 고려하지 않고 설계하다보니 다시 돌아와서 작업하려고 할 때
너무 많은 것을 수정해야하다보니깐 꼬여버려 결국 시간내에 완성하지 못했다.
사실 처음 시작할 때는 인스터싱에 대해 모르고 있는 상황이었고 (개념만 강의에서 혹은 인터넷에서 배운 수준이고 구현이나 용어조차 모르고 있었다.)
그때는 vulkan 자체가 너무 시급했던 상황이라
그때 뭐 부족했던 거 인정.
자기위로 맞지만 그때의 나는 너무 쪼랩이었다.
앞으로는 구현에만 초점을 맞추지마고 최적화도 고려해서 처음부터 설계하는 습관을 들여야겠다.
다음
구현하고 싶은 거는 엄청 많았는데 결국 못다한게 많아서 여기서 하소연하자면
일단 pbr했고 skybox있는데 IBL없는게 말이 안된다.
이것만 해도 진짜 달라지는데 ㅠㅠㅠㅠㅠ
다시 생각해보면 잠을 줄여서라도 했어야했는데 내 성실함 부족이다.
deferred shading으로 넘어가면서 msaa를 없앴는데
나중에 안티엘리어싱 추가한다 해놓고 까맣게 잊고있었다.
TAA FXAA 정도는 공부하고 구현도 해보고 싶었다.
SSAO도 적용할까말까 고민했었다가 결국 시도도 못해봤네..
이거는 코스트에 비해 뭔가 리턴이 적은 느낌이라
적용된 거 안 된거 비교하면서 연구 해보려했었는데 결국 후순위로 밀리다가 못하게되었다.
또 뭐있지..
사실 raymarching 이전에 했던 프로젝트에 있는 것도 엔진에 적용도 해보고
확장성도 높여보고 하는 원대한 꿈이 있었지만 결국 못했다.
vulkan 파이프라인 추가가 품이 너무 많이 든다... 이것도 뭐 내 능력부족..
버그도 요번에 씬 만들면서 발견했는데
model house 씬에서 자세히 보면 문에는 그림자 적용이 안되서 빛이 문들 뚫고 나온다 ㅋㅋㅋㅋ..
원인을 찾아보니 문은 애니메이션이 있고 애니메이션을 적용하는데 있어서
shader에서 따로 matrix를 곱해줘야 할게 있는데
처음부터 애니메이션을 고려하지 않고 설계를 하다보니 (애니메이션은 나~중에 추가를 했다.)
지연렌더링 파이프라인에서는 적용을 해서 애니메이션은 렌더링되도
그림자 맵 생성시에는 적용을 안해줘서 그림자는 초기 모델의 메쉬를 따르는 것이었다.
이걸 보면 초기 설계를 아주 빡빡하게 하고 들어가거나
작업을 하더라도 처음부터 확장성 좋은 코드를 짜야 나중에 덜 고생한다는 것을 뼈저리게 느끼게 되었다.
다 내 불찰이고 실력부족이다 ㅠㅠ
배운 것도 엄청 많지만 아쉬운 것도 엄청 많은 프로젝트였다.
다음 플젝은 directX12다!
더 성장해서 돌아오겠다!!
근데 다음 프로젝트는 블로그에 쓸 수 있을지 모르겠다..
쨋든 끝!
'Computer Graphics > Vulkan' 카테고리의 다른 글
Vulkan Game Engine - 24. 평가 받을 준비.. (0) | 2025.03.20 |
---|---|
Vulkan Game Engine - 23. deferred renderpass의 descriptorset 줄이기 고민 (0) | 2025.03.17 |
Vulkan Game Engine - 22. shadowmap에 storage buffer, push constants 적용 (0) | 2025.03.17 |
Vulkan Game Engine - 21. 엔진 문제와 해결 방안 고민 (최적화) (0) | 2025.03.12 |
Vulkan Game Engine - 20. point light PCF 그림자 수정 (0) | 2025.03.10 |