Programming/openGL2011. 11. 22. 21:04
소스들을 보면 glsl을 위해서는 항상 glew를 사용하는데
왜 사용하는지 문득 궁금해져서 뒤져보니

과거에 GLSL은 OpenGL 1.4의 extension으로 시작되었다고 한다.
그리고 ARB는 OpenGL ARB에 의해 공식적으로 승인된 Extension이라고 한다.

즉, GLSL 역시 Extention 이므로, GLEW(GL Extention Wrangler) 를 사용해서 
편리하게(?) 확장하여 사용을 하게 된다.

ARB - Extensions officially approved by the OpenGL Architecture Review Board
[링크 : http://www.opengl.org/resources/features/OGLextensions/]
[링크 : http://glew.sourceforge.net/basic.html]

Originally introduced as an extension to OpenGL 1.4, GLSL was formally included into the OpenGL 2.0 core by the OpenGL ARB.
[링크 : http://en.wikipedia.org/wiki/GLSL]
[링크 : http://en.wikipedia.org/wiki/OpenGL#Extensions


사족 : 그러고 보니. Nvidia는 Geforce 8000 이상부터 ATI는 HD 급 부터라고 한거 봐서는..
         Nvidia의 CUDA / ATI의 ATI Stream(OpenCL) 적용 하드웨어와 일치하는 느낌이 드는데..
         결국에는 GLSL은 특화된 CUDA/OpenCL 이라고 보면 되려나?

'Programming > openGL' 카테고리의 다른 글

openGL에서 AVI 동영상 재생하기  (0) 2013.04.09
openGL gcc에서 컴파일 하기  (0) 2012.06.02
GLSL 관련 링크  (0) 2011.11.20
GLSL 함수목록 정리  (0) 2011.11.20
GLSL 은.. intel 내장형으로는 무리?  (0) 2011.11.19
Posted by 구차니
Programming/openGL2011. 11. 20. 14:40
GLSL 관련 문서들 링크

개인적으로 in vec3 val, 이런게 보이길래 찾다보니
pdf 문서가 무진장 정리 잘되어 있는것 같아서 득템한기분임 ㅋㅋ

in 은 함수 안으로 들어가는 변수. 없으면 in과 비슷하다고 보면 될 듯하고
uniform은 GLSL과 어플리케이션의 변수를 공유하도록 하는 구분자이다.


[링크 : http://www.jrr.kr/entry/8-GLSL-Animation] << 펄럭이는 예제

[링크 : http://en.wikibooks.org/wiki/GLSL_Programming/Vector_and_Matrix_Operations] << 벡터 업 캐스팅/다운캐스팅
[링크 : http://www.opengl.org/documentation/glsl/]
    [링크 : http://www.opengl.org/sdk/docs/tutorials/TyphoonLabs/]
        [링크 : http://www.opengl.org/sdk/docs/tutorials/TyphoonLabs/Chapter_2.pdf] << 요거 좋은듯
 [링크 : http://en.wikipedia.org/wiki/GLSL]

'Programming > openGL' 카테고리의 다른 글

openGL gcc에서 컴파일 하기  (0) 2012.06.02
glsl과 glew의 연관관계  (0) 2011.11.22
GLSL 함수목록 정리  (0) 2011.11.20
GLSL 은.. intel 내장형으로는 무리?  (0) 2011.11.19
GLSL 관련 링크  (0) 2011.11.12
Posted by 구차니
Programming/openGL2011. 11. 20. 11:27
예제소스를 보고 정리한 GLSL에서 사용하는 함수들 목록
glShaderSource()의 경우에는 파일의 내용을 직접 넣어주고
glCompileShader()를 통해 모종의 작업을 하는듯 -_-

[링크 : http://www.opengl.org/sdk/docs/man/xhtml/glCreateShader.xml ]
[링크 : http://www.opengl.org/sdk/docs/man/xhtml/glShaderSource.xml]
[링크 : http://www.opengl.org/sdk/docs/man/xhtml/glCompileShader.xml]
[링크 : http://www.opengl.org/sdk/docs/man/xhtml/glAttachShader.xml]
[링크 : http://www.opengl.org/sdk/docs/man/xhtml/glCreateProgram.xml]
[링크 : http://www.opengl.org/sdk/docs/man/xhtml/glLinkProgram.xml]

'Programming > openGL' 카테고리의 다른 글

glsl과 glew의 연관관계  (0) 2011.11.22
GLSL 관련 링크  (0) 2011.11.20
GLSL 은.. intel 내장형으로는 무리?  (0) 2011.11.19
GLSL 관련 링크  (0) 2011.11.12
gluUnProject / glRenderMode(GL_SELECT)  (0) 2011.10.19
Posted by 구차니
Programming/openGL2011. 11. 19. 00:03
다뤄지지 않은 예외가 발생해서 이래저래 뒤적여 보는데..

OpenGL Version = '1.4.0 - Build 7.14.10.4704'
Shading Language Version = '(null)'
Warning: Your graphics card or the driver may be old.
   The next assignment will require OpenGL 3.2 and GLSL 1.50 support.
   Please change the "#version" tag to 110 in your GLSL shader file.
   Compiling shader "..\shaders\blinn_phong_vert.glsl". 

Intel 945GM 으로는 openGL 1.4만 지원하고
965나 946GZ에서나 openGL 2.1을 지원한다고 한다.
[링크 : http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=248717]

6) What NVIDIA hardware will support OpenGL 3?

The new features in OpenGL 3 require G80, or newer hardware. Thus OpenGL 3.0/3.1/3.2/3.3 is not supported on NV3x, NV4x nor G7x hardware. This means you need one of the following NVIDIA graphics accelerators to use OpenGL 3:

Desktop
Quadro FX 370, 570, 1700, 3700, 4600, 4700x2, 4800, 5600, 5800, Quadro VX200, Quadro CX
GeForce 8000 series or higher; Geforce G100, GT120, 130, 220, GTS 150, GTS 250, GT310, 320, 330, 340, GeForce GTX 260 and higher, any ION based products.
 
Notebook
Quadro FX 360M, 370M, 570M, 770M, 1600M, 1700M, 2700M, 2800M, 3600M, 3700M, 3800M
GeForce 8000 series or higher
 
[링크 : http://developer.nvidia.com/opengl-driver

OpenGL 3.2
Released on August 3, 2009 and updated on December 7, 2009.
Supported Cards: GeForce 8, GeForce 9, GeForce 100, GeForce 200 and GeForce 300 series, Radeon HD series
Features:
OpenGL Shading Language revision 1.50 (GLSL)

[링크 : http://en.wikipedia.org/wiki/OpenGL]

결론 : Intel 내장형으로는 포기하면 편해~ 라는거?

'Programming > openGL' 카테고리의 다른 글

GLSL 관련 링크  (0) 2011.11.20
GLSL 함수목록 정리  (0) 2011.11.20
GLSL 관련 링크  (0) 2011.11.12
gluUnProject / glRenderMode(GL_SELECT)  (0) 2011.10.19
glNormal()  (0) 2011.10.18
Posted by 구차니
Programming/Java2011. 11. 15. 22:04
Posted by 구차니
Programming/openGL2011. 11. 12. 21:27
GLSL 샘플 코드라는데..
ARB와 openGL 2.0 버전과 차이점은 먼지 공부할게 많은듯 -_-

[링크 : http://www.lighthouse3d.com/tutorials/glsl-tutorial/setup-for-glsl-example/]

----
2011.1120 추가
Intel 945에서는 ARB 버전으로 해봐도 안된다 -_-
[링크 : http://lighthouse3d.com/wptest/wp-content/uploads/2011/03/glutglsl.zip]
-----
GLEW
[링크 : http://glew.sourceforge.net/]

공식 glsl 사이트
[링크 : http://www.opengl.org/documentation/glsl/]

쉐이더 개발 프로그램
[링크 : http://www.opengl.org/sdk/tools/ShaderDesigner/] Shader Designer
[링크 : http://developer.amd.com/archive/gpu/rendermonkey/pages/default.aspx] render monkey

디버거 - glslDevil 

[링크 : http://cumbia.informatik.uni-stuttgart.de/glsldevil/]
    [링크 : http://cloudlucifer.tistory.com/entry/GLSL-디버거-발견]


튜토리얼
[링크 : http://zach.in.tu-clausthal.de/teaching/cg_literatur/glsl_tutorial/index.html]
[링크 : http://www.lighthouse3d.com/opengl/glsl/]
[링크 : http://www.clockworkcoders.com/oglsl/tutorials.html]

용어정리
ARB - OpenGL Architecture Review Board 
[링크 : http://en.wikipedia.org/wiki/OpenGL_ARB ]

'Programming > openGL' 카테고리의 다른 글

GLSL 함수목록 정리  (0) 2011.11.20
GLSL 은.. intel 내장형으로는 무리?  (0) 2011.11.19
gluUnProject / glRenderMode(GL_SELECT)  (0) 2011.10.19
glNormal()  (0) 2011.10.18
glut Menu 관련 함수들  (0) 2011.10.10
Posted by 구차니
Programming/Java2011. 11. 2. 23:35
public boolean matches(String regex)

matches() 메소드는 정규표현식으로 나타낸 검색어가 String내에 있는지 확인해준다.
정규표현식을 잘 모르지만.. 아무튼 *Manager 로 문자열내에 검색하고 싶으면
matches(".*Manager") 로 하면 된다.

[링크 : http://download.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#matches(java.lang.String)]
[링크 : http://mwultong.blogspot.com/2006/12/java-find-sub-string-in-string.html]
Posted by 구차니
Programming/Java2011. 10. 29. 22:25
정확하게는 추가가 아니라, 목록을 작성하고 새로운 목록으로 대체하는 것이지만..
CListBox 에서 처럼 JList에는 AddItem이나 AddString이 존재하지 않는다.

기본 컨셉인진 모르겠지만
DefaultListModel() 를 이용해서 addElement() 메소드로 원하는 String을 추가하고
추가된 ListModel을 JList의 setModel() 을 통해 대체한다.

import javax.swing.*; // javax.swing.FilenameFilter 

    public class FileUtil {
        public void listFiles(String dir) {
            File directory = new File(dir);
            if (!directory.isDirectory()) {
                System.out.println("No directory provided");
                return;
            }
            //create a FilenameFilter and override its accept-method
            FilenameFilter filefilter_java = new FilenameFilter() {
                public boolean accept(File dir, String name) { //if the file extension is .txt return true, else false
                    return name.endsWith(".java");
                }
            };

            String[] filenames = directory.list(filefilter_java);
            DefaultListModel listModel = new DefaultListModel();

            for (String name : filenames) {
                System.out.println(name);
                listModel.addElement(name);
            }
            jList1.setModel(listModel);
        }
    }

[링크 : http://kldp.org/node/110528]
    [링크 : http://download.oracle.com/javase/tutorial/uiswing/components/list.html]
Posted by 구차니
Programming/Java2011. 10. 29. 22:20
File 클래스에서 원하는 경로를 넣고
list() 메소드를 이용하면 그 경로상의 목록을 얻어올수 있다.

만약 원하는 확장자의 파일만을 원한다면
FilenameFilter 클래스를 등록해서 빼내면 되는데 Win32와 차이점은
*.ext 가 아닌 .ext로 해야 한다는 점이다.

import java.io.File;
import java.io.FilenameFilter;
 
    public class FileUtil {
        public void listFiles(String dir) {
            File directory = new File(dir);
            if (!directory.isDirectory()) {
                System.out.println("No directory provided");
                return;
            }
            //create a FilenameFilter and override its accept-method
            FilenameFilter filefilter_java = new FilenameFilter() {
                public boolean accept(File dir, String name) { //if the file extension is .txt return true, else false
                    return name.endsWith(".java");
                }
            };

            String[] filenames = directory.list(filefilter_java);
            for (String name : filenames) {
                System.out.println(name);
            }
        }
    } 

[링크 : http://www.javadb.com/list-files-of-a-certain-type]
[링크 : http://www.roseindia.net/java/java-get-example/get-file-list.shtml]
Posted by 구차니
Programming/Java2011. 10. 29. 21:53
영역을 선택하고 Alt+Shift+F 를 누르면 자동으로 코드를 정렬한다.


[링크 : http://stackoverflow.com/questions/1311912/how-do-i-autoindent-in-netbeans]

'Programming > Java' 카테고리의 다른 글

JList 에 원하는 목록 추가하기  (4) 2011.10.29
Java 에서 파일 목록 엳어오기  (0) 2011.10.29
Java용 폴더 다이얼로그  (0) 2011.10.28
netbeans IDE  (0) 2010.08.23
unit test - 단위 테스트  (0) 2010.08.18
Posted by 구차니