728x90
https://3dmpengines.tistory.com/747
Directx D3DXCreateSphere 구현
http://ergate.tistory.com/117 Directx 에서 지원하는 Sphere함수를 구현해보았습니다. Slices는 나누어질 삼각형의 갯수 이며 Stack은 사진에서 Y축으로 나누어질 갯수 입니다. Radius는 반지름의 값이며 Slice..
3dmpengines.tistory.com
색(빛)의 크기 : 루트3
(0,0,0) 에서 (1,1,1)로 가는 벡터들이 무채색
나머지 채색
xyz = -1 ~ 1
-> +1 -> /2
-> 0~1
r+g+b 값이 가장크면 가장 밝은 색
v x k = 빛의 밝기 조절 가능
Mesh 가 다 같은모양이면 굳이 다른 메모리를 쓸 필요가 있음?
Mesh* mesh = new Mesh();
Mesh* mesh = new Mesh();
mesh->LoadFile("1.Sphere.mesh");
Sun.mesh = mesh;
훨씬 빨라졌다. 그러면 이제 다 그렸을 때 , 메쉬 메모리 해제를 해주면 되겠네.
GC (가비지 컬렉션)
쓰지 않는 메모리를 자동으로 해제하는 기법. 그러나 C, C++에선 지원하지 않는다. 수동관리하니까. 그게 의미있으니까
스마트 포인터
GC를 못써서 대신 사용하는 스마트 포인터.
개념을 잘모르고 쓰면 영영 지워지지 않아서 손해다.
1. unique_ptr
하나의 스마트포인터만 소유권.
2. shared_ptr
특정객체를 참조하는 스마트포인터가 총 몇개인지. use_count : 몇명이서 사용하고 있는지
3. weak_ptr
shared_ptr<Mesh> mesh;
간단하게 선언할 수 있다.
기존 포인터처럼 사용할 수 있음. 단,
Sun.mesh = mesh;
같이 대입은 되지 않음.
shared_ptr<Mesh> mesh = make_shared<Mesh>();
Sun.mesh.reset();
mesh.reset(); //할당해제
728x90
'잠시 정리 > 수업 정리' 카테고리의 다른 글
22. 07. 01 수업정리 ( Actor + ImGui ) (0) | 2022.07.01 |
---|---|
22. 06. 30 수업정리( 리소스 매니져 + IMGUI) (0) | 2022.06.30 |
22-06-27 수업정리 (0) | 2022.06.27 |
22. 06. 24 수업정리 (0) | 2022.06.24 |
22. 06. 23 수업정리 (0) | 2022.06.23 |