키프레임 애니메이션

- 스프라이트 애니메이션

- 키프레임 사이 채움(보간법 : Interpolation)

물리 기반 애니메이션

- 입자 시스템

여러개의 물리 법칙에 따라 시뮬레이션 함으로써 다양하고 폭넓은 범위의 애니메이션 효과를 만들 수 있음

- 강체 시뮬레이션

모양이 변하지 않는 물체들을 여러개 시뮬레이션

- 충돌감지

Rigidbody 시뮬레이션에서 가장 중요한 요소

- 변형체 시뮬레이션

물체의 부피 전체를 자그마한 조각들로 쪼갠 후 그 조각들이 어떻게 상호작용 하는지를 물리 방정식을 따라서 시뮬레이션 한다.

- 옷감 시뮬레이션

오변형체 시뮬레이션과 비슷하게 여러개의 작은 조각으로 나누어 옷감과 비슷한 움직임을 만들어낸다

- 머리카락 시뮬레이션

 

- 유체 시뮬레이션

The Navier-Stokes equations

 

- 연속체 시뮬레이션

 

캐릭터 애니메이션

사람의 골격을 계층구조화 하고 피부를 입힌다

- 역기구학

행동 양식 애니메이션

- 모션 캡쳐

 

참고자료

https://youtu.be/cFFfJm6RtMg

 

반응형

렌더링이란

표현, 묘사

컴퓨터 안에 디지털 정보로 저장되어있는 가상의 세계를 컴퓨터 그래픽스 알고리즘을 이용하여 눈으로 볼 수 있는 형태로 디스플레이에 표현해 주는 과정

2차원 또는 3차원 장면을 바탕으로 컴퓨터를 이용해 사진이나 영상을 만들어내는  과정 또는 그러한 기법

- 투영

- 클리핑

- 은명처리

- 셰이딩

- 매핑

 

래스터 그래픽스

이미지 일반적으로 직사각형 격자의 화소, 색의 점을 모니터, 종이 등의 매체에 표시하는 자료구조

 

래스터화(Rasterization)

최근 컴퓨터 그래픽스에서는 3차원 모델을 여러개의 삼각형으로 표현하는것을 선호한다.

래스터화 : 삼각형을 화면 위로 투영시킨다 -> 삼각형 안의 모든 픽셀의 색을 결정한다 -> 이 과정을 모든 삼각형에 대해 따로 진행한다.

그런 색을 결정할 때 사용하는 기술 : 쉐이딩

쉐이딩 기술 : 퐁쉐이딩, 물리기반 렌더링, 텍스처링

장점 : 여러 삼각형들을 독립적으로 그리기 때문에 빠르다

단점 : 여러 물체들의 상호작용을 고려하기가 어렵다. 사실적인 영상을 얻기 위해서는 추가 작업이 필요하다

 

광추적 기법(Raytracing)

역방향 광추적

눈으로 볼 수 있는 빛을 추적하는 기술

장점 : 광선을 추적할 수 있어 빛이 물체를 통해 반사되거나, 굴절되거나, 투명한 제질을 모두 시뮬레이션 하여 렌더링 할 수 있다. 그림자를 처리할 수 있다

단점 : 연산량이 많다, 반사광, 간접광등을 모두 추적할 수 없다.

 

눈으로 부터 역방향 광을 쏴주고 그 광선이 물체와 부딪히면 그 물체의 한 점과 조명이 얼마나 가깝고, 먼지, 각도는 어떤지에 따라 쉐이딩을 준다.

 

전역조명

복사측정술(Radiometry, Radiosity)

단점 : 느리다

 

포톤 매핑(Photon Mapping)

장점 : 놓치는 빛이 적어진다. 간접광이 자연스럽다

 

참고 자료

https://youtu.be/e_YJ45cZ3zE

https://ko.wikipedia.org/wiki/%EB%9E%98%EC%8A%A4%ED%84%B0_%EA%B7%B8%EB%9E%98%ED%94%BD%EC%8A%A4#:~:text=%EC%BB%B4%ED%93%A8%ED%84%B0%20%EA%B3%BC%ED%95%99%EC%97%90%EC%84%9C%20%EB%9E%98%EC%8A%A4%ED%84%B0%20%EA%B7%B8%EB%9E%98%ED%94%BD%EC%8A%A4,%ED%8C%8C%EC%9D%BC%EB%A1%9C%20%EC%A0%80%EC%9E%A5%ED%95%A0%20%EC%88%98%20%EC%9E%88%EB%8B%A4.

 

래스터 그래픽스 - 위키백과, 우리 모두의 백과사전

 

ko.wikipedia.org

 

반응형

컴퓨터 그래픽스

- 컴퓨터를 이용하여 영상을 만들거나 조작하는 기술

- 컴퓨터를 이용하여 표현되거나 조작된 시각 정보

 

XR(Extended Reality)확장 현실

가상현실, 증강현실, 혼합현실을 아우르는 개념

 

- 가상현실(VR : Virtual Reality)

우리가 살고이쓴 물리적인 공간이 아닌 컴퓨터로 구현한 가상 환경 또는 그 기술 자체를 말한다

사용자의 주변 환경을 차단해 새로운 세계에 들어간 것처럼 몰입감을 주는 것이 핵심이라 머리에 쓰는 디스플레이 디바이스 HDM를 활용해 현실 세계와 차단하는 콘텐츠가 주를 이룬다.

인간의 감각을 가상으로 만들어진 감각으로 대체해준다

실제로 존재하는 것이 없다

VR헤드센으로는 HTC바이브, 플레이스테이션 VR, 오큘러스 퀘스트2 등이 있다

다양한 게임이 존재한다

추천하는 게임 중 하나

https://store.steampowered.com/app/450390/The_Lab/

 

The Lab on Steam

Welcome to The Lab, a compilation of Valve’s room-scale VR experiments set in a pocket universe within Aperture Science. Fix a robot, defend a castle, adopt a mechanical dog, and more. Still not sold? It’s free!

store.steampowered.com

벨브에서 나온 게임인데 무료구 특히 활쏘는게 제일 재미있었다.

게임명에서 보여지는 것 처럼 실험을 위해 만든 게임으로 보여진다. 근데 재미있다

 

 

 

내가 만들었던 VR 작품

https://blog.naver.com/tndk4997/222216741611

 

VR프로젝트 _ 관계자 외 출입금지

관계자 외 출입금지 우리는 선을 넘는다는 말을 관계에서 부정적인 의미에서 자주 사용한다. 하지만 유승우...

blog.naver.com

- 증강현실(AR : Augmented Reality)

VR과 달리 위치, 지리정보를 송수신하는 GPS 장치 및 중력 그리고 자이로스코프에 따른 위치 정보 시스템을 기반으로 우리가 경험하는 현실 세계에 가상의 물체나 정보가 합성되어 실제 현실과 가상현실의 상호작용하는 공간으로 만들어 주는 기술이다.

사용자가 보고 있는 실사 영상에 3차원 가상 영상을 중첩함으로써 현실과 가상의 구분이 모호한 것이 특징이다. 

현실의 영상에 CG로 만들어진 영상을 합쳐서 보여준다

가장 유명한 예로 포켓몬고가 있다

VR은 헤드셋을 쓰고 걸어다녀야 하지만, AR은 스마트폰 화면으로 볼 수 있어 현실세계에서 좀 더 유용하게 사용된다.

 

내가 만들었던 AR 작품

https://blog.naver.com/tndk4997/222023425571

 

AR 봄여름가을겨울 프로젝트-[겨울]

작년 2학기에 시작해서 나의 해외봉사, 코로나 때문에 늦어지다 이제서야 완성된 프로젝트 아트워크 제작 3...

blog.naver.com

- 혼합현실(MR : Mixed Reality)

VR이나 AR 보다 한 단계 더 나아간 기술

VR, AR 의 장점만을 합친 기술이다

CG로 만든 세상과 실제 세상이 혼합되어 있는 것처럼 보여지는 것

반응형

DNS(Domain Name System)

DNS는 호스트의 도메인 이름을 호스트의 네트워크 주소로 바꾸거나 그 반대의 변환을 수행할 수 있다록 하기 위해 개발되었다.

ex) 사람이 읽을 수 있는 도메일 이름(www.naver.com)을 기계가 읽을 수 있는 IP주소로 변환

 

host와 host가 통신을 하기 위해서는 ip주소가 필요하다.

 

DNS의 핵심 -> DNS서버

 

1. DNS 서버에서 example.com 의 IP를 기억하고 있다면

2. 기기가 인터넷에 연결되는 순간 DHCP에 의해 DNS 서버에 IP주소가 자동으로 셋팅이 된다

3. example.com을 검색하면 DNS 서버에 접속하여 DNS에서 기억하고 있는 IP를 응답하게 된다

4. 기기가 IP주소를 알게 되었기 때문에 접속이 가능해진다.

 

DHCP(Dynamic Host Configuration Protocol)

호스트의 IP주소와 각종 TCP/IP 프로토콜의 기본 설정을 클라이언트에게 자동적으로 제공해주는 프로토콜

DHCP는 네트워크에 사용되는 IP주소를 DHCP서버가 중앙집중식으로 관리하는 클라이언트/서버 모델을 사용한다.

DHCP지원 클라이언트는 네트워크 부팅과정에서 DHCP서버에 IP 주소를 요청하고 이를 얻을 수 있다.

참고 자료

https://opentutorials.org/module/3421/20299

 

DNS의 원리 - WEB2 - Domain Name System

수업소개 이 수업에서는 도메인 이름의 동작 원리를 큰 틀에서 살펴봅니다.  강의 수업내용 스크린 샷

opentutorials.org

https://ko.wikipedia.org/wiki/%EB%8F%84%EB%A9%94%EC%9D%B8_%EB%84%A4%EC%9E%84_%EC%8B%9C%EC%8A%A4%ED%85%9C

 

도메인 네임 시스템 - 위키백과, 우리 모두의 백과사전

 

ko.wikipedia.org

https://jwprogramming.tistory.com/35

반응형

Difference between Interpreter and Compiler

인터프리터 언어 컴파일 언어
인터프리터 언어는 한번에 하나의 프로그램 명령문만 기계어로 번역한다 컴파일 언어는 전체 프로그램을 스캔하고 한번에 번역한다
소스코드 분석에 적은 시각이 걸린다. 하지만 전체 실행 시간은 훨씬 느리다 소스코드 분석에 시간이 오래 걸린다. 하지만 전체 실행 시간은 빠르다
imtermediary code를 만들지 않아 메모리가 효율적이다. 항상 intermediary object code를 만들어낸다. 더 많은 메모리리를 필요로한다.
첫 에러가 발생할 때 까지 프로그램을 실행한다. 오류가 발생하면 실행이 중지된다. 디버깅이 쉽다. 전체 프로그램을 실행한 후 오류메시지를 발생시킨다, 비교적 디버깅이 어렵다
Ruby, Python, R 등이 있다 C, C++, Go 등이 있다.

 

컴파일언어는 컴파일 과정을 거치기 때문에 오랜 시간이 걸릴 수 있지만 컴파일이 되어있다면, 실행이 빠르다

인터프리터 언어는 컴파일 과정을 거치지 않지만 코드를 한 줄 한 줄 읽어 속도가 느리다

 

 

참고문헌

https://www.businessinsider.in/difference-between-compiler-and-interpreter/articleshow/69523408.cms

반응형

TCP 통신과 UDP 통신의 개념과 차이점!

더보기

게임 프로젝트를 진행하며 UDP 통신에 대한 연구를 진행하였지만(결국 적용엔 실패하였지만) 정작 TCP와 UDP에 대해 설명해보라고 하면

에... TCP는 신뢰할 수 있는 정보인 대신 비교적 느리구... UDP는 신뢰성이 부족한 대신 빠릅니다...! 밖에 대답할 수 없어서 자료를 이것 저것 찾아봤다.

 

TCP(Transmission Control Protocol)

신뢰할 수 있지만 복잡한 전송 계층 프로토콜. IP에 연결 지향 기능 및 신뢰성을 추가한다.

TCP는 신뢰할 수 있는 스트림 전달 서비스로, 중복되거나 손실된 데이터 없이 한 호스트에서 전송한 데이터 스트림을 다른 호스트로 전다할 수 있도록 보장한다. 패킷 전송은 신뢰할 수 없으므로, 재전송을 사용하는 긍정 수신확인이라고 하는 기술을 사용하여 패킷 전송의 신뢰성을 보장한다. 이 기본 기술을 사용하려면 수신인이 데이터 수신 시 수신확인 메시지로 응답해야 한다.

발신인은 전송한 각 패킷의 레크드를 보존하고 다음 패킷을 전송하기 전에 수신확인을 기다린다. 또한 패킷 전송 당시의 타이머도 보존하여 타이머가 만료되면 패킷을 다시 전송한다. 타이머는 패킷이 손실되었거나 손상되었을 경우 필요하다.

3 Way Handshake

TCP가 연결지향적인 특성을 가지게 해주는 과정이 3 way handshake

 

ACK : 승인을 서명하거나, 응답을 보내기 위해, 통신 프로토콜의 일부로서 통신 프로세서나 컴퓨터 사이를 지나가는 신호

SYN : TCP가 통신을 연결할 때 쓰는 flag

 

UDP(User Datagram Protocol)

비연결성(따라서 신뢰할 수 없음)전송 프로토콜이다. UDP는 오류 검사를 거의 수행하지 않으며 호스트 간 통신 대신 프로세스 간 통신을 제공하는 것 이외에 IP 서비스에 아무것도 추가하지 않는다.

UDP는 최소한의 오버헤드가 발생하는 단순 프로토콜이다. 따라서 프로세스에서 소규모의 메시지를 전송하려고 하며 신뢰성이 중요하지 않은 경우에 UDP를 사용할 수 있다. UDP를 사용하여 메시지를 전송할 경우 TCP를 사용하는 경우보다 시간이 덜 걸린다.

멀티미디어 및 멀티캐스팅 애플리케이션에 편리한 프로토콜

 

UDP 사용분야

- 인터넷 전화

- 온라인 게임

- 영상 스트리밍

 

 

(내가 이해한대로) 한번 그려보았다.

이런 느낌인가... 하구...

말할 때 마다 상대가 듣고있는지 확인하고 대꾸 없으면 대꾸 할 때까지 찔러보는 느낌

친한 친구 단톡방 st

 

요약

TCP : 신뢰성있다, 느리다

UDP : 빠르다, 정보의 손실이 있을 수 있다

TCP가 신뢰성 있고 느린 요인 : 3 way handshake

참고자료

https://youtu.be/ikDVGYp5dhg

https://www.ibm.com/docs/ko/rtw/9.0.1?topic=transports-sockets-overview 

 

반응형

+ Recent posts