본문 바로가기
728x90
반응형
[opengl].[#2.GLSL] 01. OpenGL 1.1 기반의 랜더링 최신의 OpenGL과 Shader를 사용하기 위해 glew 연동까지 준비가 되었습니다. 1. 기본 랜더링 코드 이후에 진행 될 GLSL 기반의 랜더링과 비교를 용이하게 하기 위해, 1.1 기반의 랜더링에 조금 신경을 써보겠습니다. 삼각형 대신 glut에서 제공되는 주전자 그리기 기능으로 주전자를 그리고, 배경색이나 Depth 버퍼 초기화도 추가했습니다. void display() { //Clear glClearColor(0.0f, 0.0f, 0.0f, 1.0f); glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); //Draw glColor3f(0.0f, 0.0f, 1.0f); glutSolidTeapot(0.5); glFinish(); } 2. 조명 효과 조명 효과.. 2020. 8. 9.
[opengl].[#1.Setup] Windows/VS2019/glut 기반의 셋업(3) - glew로 shader 사용 환경 구축 오랜만에 opengl을 다시 펼쳐보는 이유는, 모바일이나 웹에서 opengl을 다시 살펴 볼 일이 생겨서인데, 또 그러자니 PC기반에서 해 왔던 부분이 현재도 유효할까 궁금하고, 혹시 획기적으로 더 편리해진 부분은 없을까 궁금했습니다. 그런데, 새로운 변화보다 더 값진 것을 얻게 되는 것 같네요. 이전에 잘 모르고 했던 일들의 의미에 대해서 알게 되고, 심리적 부담이 되던 작업들을 이해하게 되면서 모르던 것이 조금 더 줄었다는 기쁨?? ^^ opengl에 대해서 세세하게 모든 것을 다시 다루는 것은, 경험 상 너무 힘든 일이고, 더구나 요즘 그런 코드를 직접 작성 할 경우도 많지 않아서 그 만한 가치도 없을 것 같습니다. 그래서, opengl에 대한 여러가지 내용은 생략하고, 웹이나 모바일에서 동일하게 .. 2020. 8. 8.
[opengl].[#1.Setup] Windows/VS2019/glut 기반의 셋업(2) - glut(freeglut)로 opengl 창 띄우기 예전에 짜두었던 코드를 지금 다시 VS2019에서 빌드 해 보려니 거의 대부분 실행이 안되네요. 그래서, glut 기반으로 다시 만들어봐야겠다 싶어 glut 받으러 가 봤더니... https://www.opengl.org/resources/libraries/glut/ GLUT - The OpenGL Utility Toolkit GLUT - The OpenGL Utility Toolkit We direct you to use FreeGLUT found on SourceForge: http://freeglut.sourceforge.net/. The original GLUT has been unsupported for 20 years. www.opengl.org 세월이 많이 흘렀음을 보여주는 문구가 있네요. .. 2020. 8. 8.
[opengl].[#1.Setup] Windows/VS2019/glut 기반의 셋업(1) - Visual studio 2019 설치 오랜만에 opengl을 다시 살펴보네요. 예전과 달라진 환경이 너무 많아서 처음부터 살펴보면서, 무엇이 어떻게 달라졌는지 확인 해 볼 겸, 환경 셋업부터 한번 정리 해 보겠습니다. 잘 알고 정리하는 것이 아니라서, 다른 분들의 자료를 많이 참고하게 되겠고, 그 과정에서 자료에 빠진 부분에서 겪는 문제점을 좀 더 구체적으로 정리 해 보도록 하죠. 처음 opengl을 할 때는, 웹 개발은 eclipse, pc application은 Visual C++/Basic 등이 주류였어요. 그러나, C#나오고 등등. linux하시는 분들은 뭔지 모르게 대단히 있어 보이고, 괜히 MSVC와 MFC를 쓰면 MS에 종속되는 것 같은 느낌이 들고. 지금은 구글이 그런 위치인 것 같은데, 벗어나는게 쉽지 않은 것 같네요. 그냥.. 2020. 8. 8.
[android/aar]#2. android library 사용하기 만들었으니 써야지~~~ https://learn-and-give.tistory.com/7 [android/aar]#1. android library 만들기 이제 모든 것을 자기가 직접 만들어서 쓰는 시대는 지나갔고, 필요한 것들을 얼마나 빨리 잘 찾아서 잘 쓰느냐가 관건. (하지만~~ 너무 쫓기듯이 살지는 말자. 내가 만들어 쓰는 것 또한 그 나름 learn-and-give.tistory.com 앞에서 만들어 둔 aar 파일을 '남이 만든 라이브러리'인 척 하면서, 어딘가 복사 해 두겠습니다. (@_@a.) (저는 android는 초보이고, 그래서 초보 눈높이로 쓰는 것이니, 최선의 방법이 아닐 수도 있어요~) 자료를 찾아보니, lib 폴더에 aar 파일을 넣어두고 쓰는 방법이 많은데, 좀 익숙한 사람들.. 2020. 7. 1.
[android/aar]#1. android library 만들기 이제 모든 것을 자기가 직접 만들어서 쓰는 시대는 지나갔고, 필요한 것들을 얼마나 빨리 잘 찾아서 잘 쓰느냐가 관건. (하지만~~ 너무 쫓기듯이 살지는 말자. 내가 만들어 쓰는 것 또한 그 나름의 고민과 보람이 있어서 얻는 것이 있으니~) 그런 이유보다는, '아... 요거 요거 좀 취약한데... 직접 한 번 해 봐야 마음에 평화가 오겠는데...' 싶을 때는 직접 해 보는게 상책. [참고 사이트] https://developer.android.com/studio/projects/android-library 아래 방법이 최선이라거나, 표준은 아니고, 그냥 해 본 방법 정도??? 조만간 '아~ 이거 왜 이렇게 했었지??' 하는 시간이 온다면, 더 보람이 있겠네. AAR을 생성하기 위한 프로젝트를 만듭니다. -.. 2020. 6. 24.
[sceneform]#4. augmented face review 몇 개 샘플을 살펴보니, 대체로 구현이 비슷한 패턴으로 되어 있는 것 같아요. 그래서, 이 패턴에 좀 익숙해지고, 이 패턴의 구조를 이해하면 ARCore를 이해하는데 도움이 될 것 같아서 다른 예제도 살펴보겠습니다. augmented face 예제입니다. https://github.com/google-ar/sceneform-android-sdk/tree/master/samples/augmentedfaces google-ar/sceneform-android-sdk Sceneform SDK for Android. Contribute to google-ar/sceneform-android-sdk development by creating an account on GitHub. github.com 실행을 하면,.. 2020. 3. 2.
[android/aar]#00. 배경 지식 대충 감 잡아보기 Android도 성능이 아주 좋아졌다는 말이 들려서 '성능 때문에 NDK를 해야 한다.'는 말에 의구심이 들기도 했지만, 성능이 중요한 AR/ Graphics 관련 툴들은 NDK 기반인 것이 많네요. 그럴 때 마다 번번히 NDK 때문에 다음으로 미뤘는데, 더이상 미루지 말고 살짝 개념이라도 좀 잡아보고자 합니다. android의 NDK 관련 페이지도 있긴 한데, 처음 접하는 입장에서는 살짝 부담스러운 것이 사실이죠. https://developer.android.com/ndk/guides NDK 시작하기 | Android NDK | Android Developers NDK(Native Development Kit)는 Android에서 C 및 C++ 코드를 사용할 수 있게 해주는 일련의 도구 모음으로, 네.. 2020. 2. 1.
[sceneform]#3. model 변경하기 ARCore 문서에 있는 다른 내용들을 해 보려고 하는데, 쉽지 않네요. 특히, lambda 표현식 때문에 샘플 코드들이 오히려 더 한 눈에 딱 들어오지 않네요. 타입 지정하지 않고 사용되는 변수들이 그 중 가장 어색하고 가독성을 떨어뜨리네요. 옛날 사람의 코딩 방식에서 벗어나기가 쉽지 않네요. 아직 Node나 Transform 등 기반 구조를 잘 모르는 상태라서 뭔가 멋진 것을 만들어 보기는 쉽지 않네요. https://developers.google.com/ar/develop/java/sceneform/create-renderables Create a Renderable | ARCore | Google Developers A Renderable is a 3D model and consists of v.. 2020. 1. 18.
[Sceneform]#2. 기본 코드 입력 지금까지 프로젝트의 공통적인 설정을 했다면, 이제부터는 구현하려는 프로젝트에 따라 달라질 수 있는 부분을 처리 해 보도록 하겠습니다. * android stuido의 update/ upgrade 위와 같이, android studio의 update가 자주 있는데, 특별한 이유가 없다면 그 때 그 때 해 주도록 하겠습니다. 간혹 새 버젼 설치하면 작동에 문제가 되는 코드나 설정이 있을 수 있는데, 그런 문제 수정하면서 또 배워 볼 수 있으니~ Camera 사용 때문에 Emulator 사용에 대한 문서도 따로 있었던 것 같아요. 제가 사용하는 컴퓨터는 메인보드에서 무슨 설정이 맞지 않아 쓸 수 없는 상태라서 실제 장비를 연결해서 씁니다. 1. hellosceneform 참고 hellosceneform을 참고.. 2020. 1. 13.
[Sceneform]#1. 개발 환경 구축 Google의 ARCore에 대한 자료가 아직은 많지 않네요. AR의 기반을 제공 해 주는 유용한 기술이기도 하고, AR을 쓰지 않더라도 3D 랜더링에 대한 기반을 좀 쉽게 가져갈 수 있지 않을까 해서 한번 공부 해 보겠습니다. ARCore 사이트 : https://developers.google.com/ar ARCore - Google Developers | Google Developers With ARCore, build new augmented reality experiences that seamlessly blend the digital and physical worlds. Transform the way people play, shop, learn, create, and experience th.. 2020. 1. 11.
728x90
반응형