분류 전체보기 290

OpenGL 기초 - 색상변경

색상변경 void glClearColor (GLClampf red, GLClampf green, GLClampf blue, GLClampf alpha);이것이 무엇인지 감이 오십니까?배경색 정의 함수입니다  - 타입명이 clamp가 들어가면 0~1사이의 값만이 들어갈 수 있음  - 알파값은 투명도  - 기본은 아무것도 지정하지 않기 때문에 까만색 각 인자의 강도는 0~1사이의 실수값, 0이면 하나도 없고, 1이면 최대밝기입니다.그래서 (1,1,1,1)은 하얀색, (0,0,0,0)은 까만색 입니다. 그런데 요 함수는 배경으로 사용할 색상을 지정하기만 할 뿐, 실제 배경을 지우진 않습니다.그래서 실제 배경을 쓸때는 void glColor(GLbitfield mask);요고를 사용합니다.인수로 어떤 버퍼를 지..

Graphics/OpenGL 2014.05.16

OpenGL 기초 - 기본타입, 함수형식

기본 변수 타입 OpenGL자체는 C언어로 제작되었지만, 함수 수준의 라이브러리라서 특정 언어에서만 사용가능하다거나, 그런 제약은 없습니다. OpenGL타입                         C타입                         접두어GLByte                                 signed char                  bGLShort                                short                           sGLint, GLSizei                       int, long                       iGLFloat, GLclampf                  float    ..

Graphics/OpenGL 2014.05.16

OpenGL 기초 - 삼각형 출력하기

삼각형을 띄워보겠습니다 여러가지 방법이 있지만,,콘솔과 윈도우창에서 사용하는 방법만 간단하게 해보도록 하겠습니다 1. 콘솔 새 프로젝트를 만드는 방법 정도야 아실것이구요, 콘솔 클릭하시고 솔루션 이름을 정합니다.    역시 빈파일 하나 만드는 정도는 읽으시는 분에 대한 예의가 아니므로 패스   코드를 작성해보겠습니다  #include  void DoDisplay(){glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_TRIANGLES);    // 그리기 시작!glVertex2f(0.0, 0.5);glVertex2f(-0.5, -0.5);glVertex2f(0.5, -0.5);           // 정점정의 : 아래서 따로 설명드리겠습니다glEnd();                ..

Graphics/OpenGL 2014.05.16

OpenGL과 OpenGL ES

OpenGL을 공부하지 않고서야 AR을 할 수 없습니다. 안드로이드에서 3D객체를 그려내기 위해서는 OpenGL ES가 사용됩니다. OpenGL Embedded System의 약자로, 모바일에서의 3D를 지원하기 위해 나온 플랫폼입니다. OpenGL ES1. 지원하는 변수 타입의 수가 적다,2. 즉시모드를 지원하지 않는다. - glBegin() -> glEnd()블록 안에서 그리기 함수 호출 불가, 정점배열만 사용가능)3. 사각형을 그리는 glRect함수 제외4. 색상 인덱스 모드는 지원하지 않는다.5. 폴리곤모드, 피드백, 선택기능, 누적버퍼, 출력목록, 속성저장 기능을 지원하지 않는다.6. 텍스쳐 맵핑은 2D만 지원한다.7. 조명은 앞뒷면이 반드시 동일하여야 한다. - 재질은 GL_AMBIENT_DI..

Graphics/OpenGL 2014.05.16

메서드 오버로딩

메서드 오버로딩 자바와 같이 C#도 메서드 오버로딩을 지원합니다. int add(int a, int b){    return a + b;} int add(int a, int b, int c){    return a + b + c;} void main(string[] args){    Console.WriteLine("두개" + add(10, 20));    Console.WriteLine("세개" + add(1, 2, 3));} 메서드의 이름은 같더라도 인자가 다른경우, 이것이 바로 오버로딩당연히두개 30세개 6 이렇게 결과가 나오게 됩니다.

파일스트림 (텍스트)

파일스트림에 대해서 알아보겠습니다,역시나 소스는 당시 작업하던 판소리 분류 프로그램입니다. - 2010년인가,, 2011년인가.. 가물가물합니다. 요고를 보면, 파일쓰기와 읽기가 동시에 이해가 되실겁니다주황색은 쓰기모드빨간색은 읽기모드          FileStream fs = new FileStream("ex.txt", FileMode.Append, FileAccess.Write); // 쓰기모드로 ex.txt를 읽고요,Append는 덧붙이는겁니다, 쓰기모드        FileStream fer = new FileStream("easttraining.txt", FileMode.Open, FileAccess.Read); // 읽기모드, easttraining.txt 파일을 읽어옵니다         S..

Get, Set - 클래스 간 값 공유

기억이 잘 나지 않는 get과 set 클래스간 변수 공유를 위해서는 반드시 필요합니다.   예를들면,   판소리 분류 프로그램의 FileWrite.cs 클래스입니다.  - 개인적으로 구현하던 프로그램입니다. using 문 namespace Wav {     public class FileWrite     {         double[,] east = new double[55, 21]; // 55개의 동편제 학습데이터         double[,] west = new double[55, 21]; // 55개의 서편제 학습데이터         public void EastRead()         {                 구현부 생략         }         public void WestR..