• 제목/요약/키워드: GLSL

검색결과 10건 처리시간 0.026초

Simulation of Deformable Objects using GLSL 4.3

  • Sung, Nak-Jun;Hong, Min;Lee, Seung-Hyun;Choi, Yoo-Joo
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제11권8호
    • /
    • pp.4120-4132
    • /
    • 2017
  • In this research, we implement a deformable object simulation system using OpenGL's shader language, GLSL4.3. Deformable object simulation is implemented by using volumetric mass-spring system suitable for real-time simulation among the methods of deformable object simulation. The compute shader in GLSL 4.3 which helps to access the GPU resources, is used to parallelize the operations of existing deformable object simulation systems. The proposed system is implemented using a compute shader for parallel processing and it includes a bounding box-based collision detection solution. In general, the collision detection is one of severe computing bottlenecks in simulation of multiple deformable objects. In order to validate an efficiency of the system, we performed the experiments using the 3D volumetric objects. We compared the performance of multiple deformable object simulations between CPU and GPU to analyze the effectiveness of parallel processing using GLSL. Moreover, we measured the computation time of bounding box-based collision detection to show that collision detection can be processed in real-time. The experiments using 3D volumetric models with 10K faces showed the GPU-based parallel simulation improves performance by 98% over the CPU-based simulation, and the overall steps including collision detection and rendering could be processed in real-time frame rate of 218.11 FPS.

대규모 점군 및 폴리곤 모델의 GLSL 기반 실시간 렌더링 알고리즘 (A Real-Time Rendering Algorithm of Large-Scale Point Clouds or Polygon Meshes Using GLSL)

  • 박상근
    • 한국CDE학회논문집
    • /
    • 제19권3호
    • /
    • pp.294-304
    • /
    • 2014
  • This paper presents a real-time rendering algorithm of large-scale geometric data using GLSL (OpenGL shading language). It details the VAO (vertex array object) and VBO(vertex buffer object) to be used for up-loading the large-scale point clouds and polygon meshes to a graphic video memory, and describes the shader program composed by a vertex shader and a fragment shader, which manipulates those large-scale data to be rendered by GPU. In addition, we explain the global rendering procedure that creates and runs the shader program with the VAO and VBO. Finally, a rendering performance will be measured with application examples, from which it will be demonstrated that the proposed algorithm enables a real-time rendering of large amount of geometric data, almost impossible to carry out by previous techniques.

OpenCL 및 Embedded GPU를 이용한 영상 특징 추출 및 파노라마 영상 생성의 병렬화 (Parallelization of Feature Detection and Panorama Image Generation using OpenCL and Embedded GPU)

  • 강승헌;이승재;이만희;박인규
    • 방송공학회논문지
    • /
    • 제19권3호
    • /
    • pp.316-328
    • /
    • 2014
  • 본 논문에서는 최신 embedded GPU를 사용하여 영상의 특징 추출 알고리즘(SIFT, SURF)을 병렬화하고, 특징 추출 및 정합 결과를 이용하여 파노라마 영상을 GPU에서 고속으로 생성하는 방법을 제안한다. 병렬화 된 알고리즘의 GPGPU(general purpose computation on GPU) 구현은 최신 스마트폰의 embedded GPU에서 지원하기 시작한 OpenCL을 이용하였다. 본 논문에서는 GPU에서 OpenGL Shading Language(GLSL)를 이용한 기존의 병렬화와 OpenCL을 이용한 새로운 병렬화 구현 결과를 효과적인 코드 구현 방법과 수행속도 관점에서 비교하였다. 실험결과, OpenCL은 GLSL과 유사한 수행 속도를 보였으며 embedded CPU와 비교하여 약 3~4배 빠른 수행속도를 보였다. 구현한 특징 추출 결과의 응용 사례로써, 특징 정합을 통한 영상 정합을 GPU상에서 병렬 수행하여 여러 장의 영상으로부터 파노라마 영상을 고속으로 생성하는 사례를 보인다.

워크 그룹 구성 변화에 따른 GPU 기반 천 시뮬레이션의 성능 분석 (The Performance Analysis of GPU-based Cloth simulation according to the Change of Work Group Configuration)

  • 최영환;홍민;이승현;최유주
    • 인터넷정보학회논문지
    • /
    • 제18권3호
    • /
    • pp.29-36
    • /
    • 2017
  • 오늘날 3D 다이내믹 시뮬레이션은 많은 산업들과 밀접한 관계를 가지고 있다. 과거에는 자동차 충돌, 건축물 분야에서 주로 사용되었으나 최근에는 영화나 게임 분야에도 물리 시뮬레이션이 중요한 역할을 하고 있다. 일반적으로 3D 물체를 사실적으로 표현하기 위해서는 많은 수학적 연산이 필요하기 때문에 기존의 CPU 기반의 응용 프로그램들은 이러한 많은 연산량을 실시간으로 처리하는데 무리가 있다. 최근 그래픽 하드웨어의 발전과 아키텍쳐의 개선으로 GPU는 기존의 렌더링 연산뿐만 아니라 범용 목적의 연산 기능을 제공하고 있고 이러한 GPU를 활용하는 연구가 활발히 진행되고 있다. 본 논문에서는 GPU를 이용한 천 시뮬레이션 수행시 수행 성능을 최적화하기 위하여, GPU 셰이더의 실행 환경 변화에 따른 천 시뮬레이션 알고리즘의 수행 성능의 변화를 분석하였다. GPU를 이용한 천 시뮬레이션은 GLSL 4.3의 Compute shader를 사용하여 스프링 중심 알고리즘과 노드 중심 알고리즘을 PC기반으로 구현하였고, GLSL Compute shader의 다양한 워크 그룹 (Work Group) 크기와 차원 분배에 따른 연산 속도의 변화를 비교 분석하였다. 실험은 5,000 프레임까지 10회 반복 수행하여 FPS(Frame Per Second)의 평균을 구하여 진행하였다. 실행결과, 노드 중심의 알고리즘이 오히려 스프링 중심의 알고리즘 보다 빠른 수행속도를 보여 주었다.

GLSL 4.3을 사용한 파티클 시스템 구현 (Implementation of Particle System Using GLSL 4.3)

  • 최영환;홍민;최유주
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2016년도 춘계학술발표대회
    • /
    • pp.189-191
    • /
    • 2016
  • 실시간 물리 기반 3D 시뮬레이션에서 연산속도는 매우 중요한 요소이다. 객체의 움직임이나 변형과 같은 현상들은 복잡한 연산을 통해서 계산되기 때문에 일반적으로 시뮬레이션의 정확도와 연산속도는 반비례 관계에 있다. 현재 출시되고 있는 대부분의 게임에서는 물체의 움직임을 정확하게 표현하기보다 연산량을 줄이기 위해 물체의 움직임이나 변형을 비슷하게 표현하는데 중점을 두고 있다. 본 논문에서는 이러한 문제를 해결하기 위하여 OpenGL 4.3의 Compute shader를 사용하여 다이내믹 시뮬레이션의 연산 작업을 GPU 병렬처리로 처리하였다. Compute shader에서 파티클의 움직임을 계산하고 Shader storage buffer object에 저장하고 파티클들의 작업량을 적절한 Workgroup의 크기로 나누어 할당하여 최적의 처리속도를 제공하도록 구현하였다. Compute shader에서 파티클의 움직임을 표현하기 위해서 수치해법 중의 하나인 Euler method를 사용하였으며 실험 결과 파티클의 수가 4,194,304개일 때 CPU 방법에 비해 약 182배 빠른 연산속도 결과를 보였다. 추후 Compute shader를 활용하여 연산량이 많은 분야에 적용 가능할 수 있을 것으로 기대한다.

질량스프링 시뮬레이션을 위한 병렬 구조 설계 방법 (Parallel Structure Design Method for Mass Spring Simulation)

  • 성낙준;최유주;홍민
    • 한국컴퓨터그래픽스학회논문지
    • /
    • 제25권3호
    • /
    • pp.55-63
    • /
    • 2019
  • 최근 물리 시뮬레이션 분야의 성능 개선을 위해 GPU 컴퓨팅 방식이 활용되고 있다. 특히 많은 연산의 양을 요구하는 변형물체 시뮬레이션의 경우 실시간성 보장을 위해 GPU 기반 병렬처리 알고리즘을 필요로 한다. 본 연구진은 변형물체 시뮬레이션을 구현하는 방법 중 하나인 질량스프링 시뮬레이션 기법의 성능을 향상시키기 위한 병렬 구조 설계 방법에 대한 연구를 수행하였다. 이를 위해 GPU에 직접 접근이 가능한 그래픽 라이브러리인 OpenGL의 GLSL을 사용하였으며, 독립적인 파이프라인인 컴퓨트 쉐이더를 활용해 GPGPU 환경을 구현하였다. 병렬 구조 설계 방법의 효과를 검증하기 위해 스프링 기반 질량스프링 시스템을 CPU기반과 GPU기반으로 구현하였으며, 실험의 결과 본 설계 방법을 적용하였을 때 CPU 환경에 비해 연산 속도가 약 6,000% 개선됨을 보였다. 추후 본 연구에서 제안한 설계 방법을 활용한다면 경량화 시뮬레이션 기술이 필요한 증강현실 및 가상현실 분야에 효과적으로 적용이 가능할 것으로 기대한다.

추가 학습이 빈번히 필요한 비포장도로에서 주행로 탐색에 적합한 GLSL 기반 ALNN Algorithm (GLSL based Additional Learning Nearest Neighbor Algorithm suitable for Locating Unpaved Road)

  • 구본우;김준겸;이은주
    • 한국정보전자통신기술학회논문지
    • /
    • 제12권1호
    • /
    • pp.29-36
    • /
    • 2019
  • 국방 분야에서 무인 차량의 주행로는 포장 도로 뿐만 아니라, 자주 다양한 변화를 갖는 야지의 비포장 도로 등이 포함된다. 이 무인 차량은 주로 험지나 오지에서 감시 및 정찰, 진지 방어 등을 수행하므로 자율 주행을 위해서 예측하지 못했던 다양한 주행로와 환경을 수시로 접하게 되며, 이에 따라 추가 학습이 필요하다. 본 논문에서는 'Forgetting' 문제를 피하면서 거리 비교와 Class 비교를 통해 빠르게 추가 학습이 가능하도록 Approximate Nearest Neighbor를 수정한 GPU 기반 Additional Learning Nearest Neighbor(ALNN) 알고리즘을 제안한다. 또 ALNN 알고리즘은 학습 데이터가 누적될수록 연산 속도가 저하되는 문제가 있고, 본 연구에서는 OpenGL Shading Language 기반의 GPU 병렬 처리를 사용하여 이를 해결하였다. ALNN 알고리즘은 기존의 학습 데이터에 영향을 주지 않으면서 빠르게 추가 학습이 가능하여, 빈번히 실시간으로 재학습이 필요한 국방 등의 분야에 활용될 수 있다.

절차적 함수를 이용한 GPU기반 실시간 3D구름 모델링 및 렌더링 기법 (GPU-based modeling and rendering techniques of 3D clouds using procedural functions)

  • 성만규
    • 한국정보통신학회논문지
    • /
    • 제23권4호
    • /
    • pp.416-422
    • /
    • 2019
  • 본 논문은 절차적함수를 이용하여 실시간으로 3차원 구름을 모델링하고 렌더링하는 알고리즘을 제안한다. 구름 모델링은 절차적 노이즈 함수인 fbm(Fractional Brownian Motion)을 변형하여 사용하며, 이 값을 대기의 수증기 밀도 값으로 이용한다. 이 밀도 값은 파라미터로 주어진 3가지 구름의 형태를 위해 변형되며 렌더링단계의 입력 값으로 들어간다. 레이마칭(ray marching)기법을 이용한 렌더링 단계에서는 이 밀도 값을 이용하여 구름의 색상을 결정하며 이때 밀도에 따른 빛의 감소 및 산란현상은 물리적으로 계산된다. 대기모델로 렌더링 된 하늘 위에 제안한 알고리즘에 의해 구현된 구름들이 블랜딩되며, 이 때 바람의 방향에 따라 구름이 움직이도록 한다. 제안된 구름 생성 및 렌더링은 GLSL언어를 이용해서 GPU상에서 구현되었다.

GPU 프로그래밍 기법을 이용한 비사실적 랜더링 (Non-Photorealistic Rendering using GPU Programming Technique)

  • 블러르마 바트-오처;성경;김수균
    • 한국항행학회논문지
    • /
    • 제15권6호
    • /
    • pp.1228-1233
    • /
    • 2011
  • 컴퓨터 그래픽 기술 중 비사실적 랜더링 기술은 매년 발전을 거듭하고 있다. 비사실적 랜더링 기술은 일러스트, 애니메이션, 만화와 같은 예술적인 스타일에 영감을 받은 것입니다. 이러한 비사실적 랜더링 기술을 위한 많은 응용 프로그램들은 특히 애니메이션, 게임 산업 등에서 인기가 있다. 전통적인 컴퓨터 그래픽스에서는 비사실적 렌더링 기술에 많은 관심을 가지고 있지만, 많은 계산 시간을 요구하기 때문에 실시간으로 사용하지는않았다. 그러나 최근 몇 년 동안 비사실적 랜더링은 그래픽 가속기를 이용하여 훨씬 다양한 고급 랜더링 및 실시간 기술을 선보이고 있다. 본 논문은 비사실적 랜더링을 위한 GPU 프로그래밍 기법에 대해 설명한다.

지역 특징 히스토그램 기반 영상식별자와 GPU 가속화 (Image Identifier based on Local Feature's Histogram and Acceleration Technique using GPU)

  • 전혁준;서용석;황치정
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제16권9호
    • /
    • pp.889-897
    • /
    • 2010
  • 현대의 대량화된 영상 관리 시스템은 영상의 특징을 표현하는 영상식별자에 대해 왜곡에 강인하며 빠른 검색 속도, 정확성 및 효율적인 저장 등의 기본 성능을 요구한다. 영상식별자 설계 방법은 기하학적 왜곡에 강인한 지역 방식과 빠른 검색 및 적은 저장 용량의 속성을 지닌 전역방식으로 구분 할 수 있다. 본 논문에서는 왜곡에 강하고 지역적 공간적 제약으로 인한 서로간의 차별성이 강화된 지역 기술자들로부터 각각 개개 차원의 특징 분포도를 분석하여, 두 영상간의 유사도를 빠르고 정확하게 측정할 수 있는 지역 기술자 및 전역 기술자의 속성을 가지고 있는 LFH(Local Feature's Histogram)기반 영상식별자를 제안한다. 또한 GPU를 사용하여 LFH를 구현하는 방법을 제시하며, 제안한 LFH와 대표적인 지역, 전역 방식인 SIFT 및 EHD 방식과 저장용량, 추출 시간, 검색 속도 및 정확률에 대한 성능을 비교하였다.