분류 전체보기(78)
-
[Algorithm] 1. Data Structure 복습
자료구조와 알고리즘 - 프로그램이란 데이터를 표현하고 (자료구조) 그렇게 표현된 데이터를 처리하는 것 (알고리즘) - Input → [Process] → Output 자료구조의 분류 - 선형 구조: 1 : n / 비선형 구조: n : m - 배열, 연결리스트: 물리적으로 어떻게 저장되어 있는지로 구분 - 스택, 큐: 접근 방식에 따라 구분 ADT (Abstract Data Type) - 데이터 타입을 추상적으로 정의한 것 - 데이터나 연산이 무엇(what)인가를 정의함 (Set of operations) - 데이터나 연산을 어떻게(how) 컴퓨터 상에서 구현할 것인지는 정의하지 않음 - ADT가 설명해야 하는 것: - 자료구조를 어떻게 생성하고 제거하는지 - 어떻게 item을 추가하고 삭제하는지 - 어떻..
2023.10.11 -
[Algorithm] 0. Introduction
소프트웨어 개발 - 프로그램: 소프트웨어를 만드는 것 - 요구사항 분석 (What, 논리적 사고력, 추상화) → Design (How, 알고리즘) → Implement (Do it!, 프로그래밍 언어) → Test (Check) → Maintenance (Getting Better) 알고리즘이란? - 전산학의 핵심 기술 - 컴퓨터를 사용하여 문제 해결하는 절차를 체계적으로 제시 - 특정한 일을 수행하는 명령어들의 유한 집합 (절차적 처리, 효율적 실행, 전략적 접근, 정확한 결과) - 입력으로부터 출력을 생성해내는 과정 - A plan of solution for a problem (strategy) - Find algorithms that are fast for very large inputs - An..
2023.10.11 -
[Algorithm] 빅오(Big-O) 표기법
What is Big-O? - Mathematical notation that describes algorithm efficiency - Time & Space complexity - Describes the growth rate of algorithms - Big-O에서 상수는 버림 (ex. O(2n) → O(n), O(n^2 + n^2) → O(n^2)) ∵ 알고리즘의 running time을 재기 위함이 아니라 데이터의 증가에 따른 처리시간 증가율을 예측하기 위함 O(1) : constant time - 입력 데이터의 크기에 상관없이 언제나 일정한 시간이 걸리는 알고리즘 // 배열의 길이와 관계없이 언제나 일정한 속도로 결과 반환 F(int[] n) { return (n[0] == 0) ? true..
2023.10.11 -
[Etc] Mitsuba Renderer 설치
1. https://www.mitsuba-renderer.org/download.html 에서 Mitsuba 다운받고 압축 해제 2. https://www.mitsuba-renderer.org/download.html 에서 원하는 Example Scenes 다운받고 압축 해제 3. mtsgui.exe 실행 4. File - Open - Example Scenes의 xml 파일 선택 빌드할 필요 없이 바로 사용할 수 있다.
2023.10.11 -
[Computer Graphics] Ray Tracing #2 (번역)
Ray Tracing #1 (번역) - https://serinyoon.tistory.com/41 [ 3. Adding Reflection and Refraction ] Ray tracing의 장점은 ray propagation의 개념을 확장하여 reflection, refraction과 같은 효과를 쉽게 simulate 할 수 있다는 것이다. Reflection, refraction은 glass material이나 mirror surface에서 유용하다. An Improved Illumination Model for Shaded Display(1979) 에서 Turner Whitted는 Appel의 ray tracing 알고리즘을 확장하여 reflection과 refraction을 포함하였다. Opct..
2023.10.11 -
[Computer Graphics] Ray Tracing #1 (번역)
https://www.scratchapixel.com/lessons/3d-basic-rendering/introduction-to-ray-tracing Ray Tracing 예시 코드를 찾아보던 중 해당 사이트를 알게 되었고, 한 번 이론을 훑어본 거로는 기억에 남지 않을 것 같아서 사이트에 적힌 이론 부문을 번역 및 정리(영어가 더 편한 경우 영어로 작성, 일부 내용은 생략)하고 예시 코드를 따라 작성해보고자 한다. Keywords: ray-tracing, perspective projection, conductor, dielectric, forward tracing, backward tracing, shadow ray, primary ray, eye ray, path tracing, reflectio..
2023.10.11