Variance shadow maps are a type of shadow mapping technique used in 3D graphics to accurately represent the shadows cast by 3D objects in a scene. They are designed to eliminate the artifact known as "shadow acne" (where shadows appear as dots or jagged lines on the surface of objects) and provide more consistent and smooth shadows.
The variance shadow map algorithm uses two maps to store information about the depth of the shadow: a depth map, which stores the depth of each pixel from the light source, and a variance map, which stores the variance of that depth value. The depth map is used to calculate the shadows and the variance map is used to determine the quality of the shadows.
Variance shadow maps provide more accurate shadows by using a statistical approach to calculate the shadow values. They are also faster than traditional shadow maps because they reduce the number of samples needed to get accurate shadow results.
Overall, variance shadow maps offer a better representation of shadows in 3D graphics compared to traditional shadow maps, making them an important tool for creating realistic and immersive 3D environments.
분산 그림자 맵은 장면에서 3D 객체가 드리우는 그림자를 정확하게 표현하기 위해 3D 그래픽에 사용되는 일종의 그림자 매핑 기술입니다. 그들은 "그림자 여드름"(그림자가 개체 표면에 점이나 들쭉날쭉한 선으로 나타나는 현상)으로 알려진 아티팩트를 제거하고 보다 일관되고 부드러운 그림자를 제공하도록 설계되었습니다.
분산 그림자 맵 알고리즘은 그림자의 깊이에 대한 정보를 저장하기 위해 두 개의 맵을 사용합니다. 광원에서 각 픽셀의 깊이를 저장하는 깊이 맵과 해당 깊이 값의 분산을 저장하는 분산 맵입니다. 깊이 맵은 그림자를 계산하는 데 사용되고 분산 맵은 그림자의 품질을 결정하는 데 사용됩니다.
분산 그림자 맵은 그림자 값을 계산하기 위해 통계적 접근 방식을 사용하여 보다 정확한 그림자를 제공합니다. 또한 정확한 그림자 결과를 얻는 데 필요한 샘플 수를 줄이기 때문에 기존 그림자 맵보다 빠릅니다.
전반적으로 분산 그림자 맵은 기존 그림자 맵에 비해 3D 그래픽에서 그림자를 더 잘 표현하므로 사실적이고 몰입감 있는 3D 환경을 만드는 데 중요한 도구입니다.
서버와 주고 받는 패킷을 정의하는 코드 상단에 #pragma pack(1)이란 전처리문을 발견했다.
이 전처리문은 이 후 정의되는 구조체의 크기를 1바이트 단위로 지정할 수 있도록 한다.
구조체의 크기는 프로그램이 실행되는 플랫폼에 따라 데이터가 처리될 때 가장 빨리 실행될 수 있는 데이터의 기본 단위로 맞춰진다. 32/64비트의 운영체제에서는 4바이트가 기준이다. 만약 구조체의 크기가 4의 배수가 안될 경우 패딩비트라는 것으로 채워서 어떻게든 4바이트를 만들어 처리 속도를 최적화 한다.
그런데 서버와 패킷을 주고 받는 경우 1바이트 단위가 아니면 전송 데이터가 늘어나고 패킷을 처리하는 데이터 단위가 달라질 수 있다.
이를 막기 위해 운영체제와 상관없이 무조건 1바이트 단위로 구조체의 크기를 결정하도록 하는 전처리 지시문이 #pragma pack(1)이다.
pack(1)에서 숫자 1을 2로 바꾸면 2바이트 단위로 구조체의 크기를 결정하게 된다.
이렇게 구조체의 크기 단위를 임의로 설정하는 구간이 끝나면 #pragma pack()으로 다시 기본 상태로 돌려 놓아서 다른 구조체의 크기 최적화를 방해하지 않도록 한다.
// #pragma pack(1)를 지정하지 않은 경우
typedef struct A_ { char c; } A;
int main()
{
A a;
sizeof(a); // 크기가 4byte로 나온다.
}
// ------------------------------ //
// #pragma pack(1)를 지정하여 구조체의 기본 크기 단위를 1바이트로 저정한 경우
#pragma pack(1)
typedef struct A_ { char c; } A;
int main()
{
A a;
sizeof(a); // 크기가 1byte로 나온다.
}
// 구조체의 기본 크기 단위를 플랫폼 기본값으로 설정하여 구조체의 기본 크기를 4byte로 돌린다.
#pragma pack()
나는 예전에 리얼포스와 해피해킹을 사용하다가 모두 처분했다. 그 이후 키보드에 크게 관심없이 지냈는데 저소음 적축에 대한 궁금증이 생겼고 정신을 차려보니 키보드가 몇 개 쌓여버렸다. 궁금증이 해소됐으니 처분하기로 하고 처분전에 내가 가진 모든 키보드에 대한 리뷰를 남긴다.
리얼포스 R2TKLS-US3
업무용이든 취미용이든 결국 리얼포스다. 키압이 낮아 편안하고 보글거리는 소리는 좋으면서 조용하고 잡소리가 없다. 현재는 재고가 없어서 구하기도 힘들고 그래서 중고 가격도 만만치 않다. 하지만 눈 딱 감고 하나 마련하면 꾸준한 만족감을 주는 키보드이다.
예전에 사용했던 리얼포스 87u 버전은 생각보다 키감이 좋지 않았다. 키압은 높았고 별로 보글거리지 않고 소리가 좀 컸다. 키보드 크기도 좀 커서 공간차지를 많이 했다. 그래서 몇년간 사용하다 처분했는데... 어쩌다 리얼포스 R2 45g를 사용해보고 결국 다시 구매하게됐다.
결론 업무용으로 강추.
장점
보글거리는 소리
낮은 키압
조용함
단점
가격
기능키 각인 없음
쓸데 없는 기능키
계산기 열기 등의 기능키가 있다.
키보드 구성품이 없다.
내가 가진 모델은 설명서 한장이 끝이다.
APC 모델은 키캡 리무버 등이 들어있다.
필코 마제스터치 블루투스
아주 예전에 구매해서 지금까지도 잘 사용하는 키보드. 블루투스 모델이라 AA 건전지 두개를 사용하는데 언제 넣었는지 잊어버릴 정도로 오래간다. 키압은 높은거 같지만 실제로 사용하면 은근 손이 편해서 장시간 타이핑을 해도 무리가 없는 좋은 키보드이다.
단점은 역시 소음. 통울림이 심해서 너무 시끄럽다. 얼마전에 고무링을 키마다 2개씩 장착해서 좀 덜해졌지만 그전에는 집에서 밤 늦게 키보드 치는게 신경쓰일 정도였다.
그리고 블루투스 연결에 문제가 있어서 연결할 때 마다 리셋을 해줘야하는 이슈가 있다. 하지만 한 번 연결하면 연결이 끊긴다든가 하는 문제는 없다.
결론 기본에 충실하고 막 굴리기 좋은 키보드.
장점
유/무선 지원
이 키보드 출시 시점에는 유/무선 키보드가 거의 없었다.
튼튼함
타이핑이 편하다
배터리 오래감
단점
소음
통울림 좀 심함.
블루투스 연결
처음 연결 시 리셋이 필요한 경우가 종종 있다.
무선 사용시 절전 모드에서 깨어날 때 1~2초 가량 기다려야 한다.
절전 기능 있는 모든 키보드가 다 이럴듯.
키크론 K1
맥과 윈도우 모두 사용가능하고 작은 크기와 낮은 높이, 유/무선 연결 때문에 구매한 키보드이다. 이런 특징을 갖는 키보드는 이 키보드가 유일한거 같다. 그래서 분명한 단점이 있어도 사용할 수 밖에 없는 키보드이다.
가장 큰 장점은 맥, 윈도우 둘 다 사용 가능한 점과 낮은 키보드 높이다. 그리고 가장 큰 단점은 키감이 안 좋고 꼭 필요한 키(Eject, Pause/Break)를 삭제하고 별 필요없는 키(Siri, Light)를 넣은 것이다.
현재는 버전4가 판매되고 있고 키캡이 오목해서 타이핑 시 더 편하다. 버전3까지는 키캡이 평평한데 이게 키 구분을 힘들게 만들어 타이핑을 피곤하게한다. 따라서 현재 구매한다면 버전4를 구매하는걸 추천하지만 현재 재고가 없다.
키감은 버전4를 구매하여 해결할 수 있지만 삭제된 키(Eject, Pause/Break)는 아직 해결 방법이 없다. Eject, Pause/Break 키만 추가된다면 더 좋은 키보드가 될거다.
결론 대체불가 키보드.
장점
맥, 윈도우 사용가능
맥과도 잘 어울리는 디자인
작고 낮은 크기
유/무선 지원
단점
맥에서 사용 시 꺼내기(Eject) 키 없음
맥에서 잠자기 등의 단축키로 Eject 키를 많이 사용하기에 불편하다.
윈도우에서 사용 시 Pause/Break 키 없음
윈도우 시스템을 여는데 사용하는 단축키에 필요한 키라서 불편하다.
평평한 키캡이 서로 구분이 잘 안가서 오타가 많이 남
버전4에서는 오목하게 변경됐으므로 버전4 구매 추천
배터리 용량 부족
LED 끄고 사용해도 2주일을 못 넘기는 듯하다.
키감이 그다지 좋지 못하고 키캡 끝부분을 누르면 키 입력이 잘 안됨
황축은 별로다.
적축 사용해보고 싶다.
키크론 K2
위의 키크론 K1을 사용해보고 키감이 아쉬워 구매한 제품. 결과적으로 키보드가 너무 높고 키 구분이 안되는 레이아웃이라 방출 예정이다.
일단 키보드가 너무 높다. 이렇게 높은 키보드는 처음이고 매우 불편하다.
그리고 개인적인 단점으로는 펑션 키와 방향키 등이 구분 안가게 붙어있어서 꼭 키보드를 보고 입력해야하는 불편함이 있다. 이는 실제 사용해보기 전에는 생각하지 못한 불편함이었다. 그저 키보드 크기가 작아지고 손 이동거리가 짧아져서 좋다라고만 생각했는데 실제 사용해보니 펑션키는 4개씩 나누지고 방향키는 따로 떨어져 있어야 손의 감각만으로 입력이 가능하다는 점을 알았다. 펑션키와 Home, End, 방향키 등을 자주 사용한다면 표준 레이아웃 키보드를 사용하는게 좋다.
적축의 키감은 나쁘지 않았지만 통울림이 제법있고 위의 단점들 때문에 거의 사용하지는 않은 키보드이다.
결론 갖다 버리자.
장점
맥, 윈도우 사용가능
유/무선 지원
단점
맥에서 사용 시 꺼내기(Eject) 키 없음
맥에서 잠자기 등의 단축키로 Eject 키를 많이 사용하기에 불편하다.
윈도우에서 사용 시 Pause/Break 키 없음
윈도우 시스템을 여는데 사용하는 단축키에 필요한 키라서 불편하다.
키보드가 높아도 너무 높다.
팜레스트 필수
F1~F12 펑션키, Home, End, 방향키가 모두 붙어 있어 눈으로 보고 사용해야한다.
디버깅 시 불편하다.
바밀로 VA87 Mac
저소음 적축이 너무 궁금해서 구매한 키보드. 저소음 적축의 키감도 좋았고 부글부글 거리는 소리도 좋았다. 디자인도 마음에 들었다. 그런데 실제 사용해보니 큰 단점이 있었다.
일단 키캡이 미끄럽다. 키캡이 미끄러워서 손가락이 피곤했고 손톱이 조금만 길어도 더 미끄러워졌다. 그리고 키캡의 각진 부분의 각이 다른 키보드들 보다 날카로워서 손가락이 아프다. 특히 하단 키들(Ctrl, Alt, Space 등등)을 누를때 끝 부분을 누르는 경우가 많은데 이 때 손가락이 아팠다.
무엇보다 단점은 스프링 소리. 키를 눌렀다 땠을 때 나는 스프링 소리가 길~게 났다. 다른 키보드는 스프링 소리가 나도 짧게 나고 끝인데 이 키보드는 아주 길게 났다. 회사에서는 다른 소리에 뭍히자만 집에서 사용하면 아주 잘 들린다.
결론 갖다 버리자.
장점
조용하다
내가 가진 키보드 중 가장 조용한듯
타이핑 시 부글부글 소리
그래도 조용하다.
단점
스프링 소리가 난다.
한 번 들리면 계속 신경쓰인다.
PBS 키캡이 미끄럽다.
손톱이 긴 사람은 더 미끄럽고 손 가락이 피곤하다.
키캡이 날카롭다.
하단 키들을 누를 때 손가락이 아프다.
키보드 높이를 조절하면 손가락이 키를 위에서 누르게 되서 해결되지만 이렇게 되면 키캡이 더 미끄러워진다.
듀가드 토체티
위의 바밀로와 함께 구매한 키보드. 저소음 적축의 키감도 좋았고 부글부글 거리는 소리도 좋았다. 특히 디자인만 보고 사도 될 정도로 지금까지의 키보드중 가장 예쁘다. 바밀로 만큼은 아니지만 회사에서는 무리없이 사용 가능할 정도로 조용하다. 기본에 충실하고 기능키도 적당하고 키감도 좋고 조용하고 예쁘고 구성품도 많다.
저소음 적축을 원한다면 강추한다.
결론 조용하고 키감좋고 예쁘다.
장점
조용하다
바밀로와 거의 차이없을 정도로 조용하다.
디자인
베이지 색 조합이 좋다.
레트와와 현대적 감성이 잘 어우러졌다.
단점
딱히 없다.
애플 매직 키보드2
맥을 사면 따라오는 키보드. 호불호가 많이 갈리지만 나는 호에 가까우며 맥을 사용할 때는 방향키를 제외하고 딱히 불편함은 없다. 하지만 방향키가 불편하다는건 생산적인 일에는 부적합하다는 뜻이기 때문에 결국 다른 키보드를 찾게 된다.
키감은 바닥치는 키감이고 은근히 키압이 좀 있는 편이지만 개인적으로 나쁘지 않다. 그리고 키보드가 낮아 손이 편하다.
맥을 사용한다면 그냥 이 키보드에 적응하는게 좋을 수도 있다.
결론 맥을 사용한다면 적응하려고 노력해보자.
장점
맥과 어울리는 디자인
작은 크기
낮은 키보드
단점
방향키
익숙해져도 불편한건 불편한거다.
알루미늄 바디의 각진 부분이 날카롭다.
애플 스마트 키보드
1세대 아이패드에 부착하여 커버의 기능도 함게 갖는 키보드. 커버와 거치대 역할까지 하기 때문에 이 키보드 하나만 있으면 아이패드가 글쓰기 머신이 된다. 특유의 바닥치는 키감은 개인차가 있다고 쳐도 무겁고 기능이 너무 없다.