Vulkan Renderer

趣味

Vulkanでマルチスレッドされたレンダラーを実装し新技術の調査する。ゼロからVulkanを学びながらエンジンシステム実装も挑戦してます。趣味プロジェクトであるためコード整理が不定期的に行ってます。

Tracyのアセット非同期処理画像

時間帯: 不定期に触る

フィーチャー:

Ray Tracing

TAA, DLSS

マルチスレッド(メインスレッド、RenderThread, 非同期CommandBufferスレッド)

Bindlessテクスチャ

Dynamic Rendering,Timeline Semaphores

Screen Space Shadows

CSM

Clustered Shading(実装中)

GPU Driven Rendering

Depth Prepass

遅延シェーディング

ECS、100.000個以上でも高速更新(簡単なカスタム実装)

シーンビュアー、シーンシステム

シェーダホットリロード

Unreal PBR

ACES, Uncharted, GT7トーンマッピング

メッシュロード処理

言語など:

C++23, Vulkan, Tracy, Visual Studio, VS Code, Assimp, ImGUI

Voxel-Based グローバル・イルミネーション

卒論 2021.1

OpenGLの遅延シェーディングレンダーラーで最先端なグローバル・イルミネーションを実装する

Build

動画

時間帯: 二月間 

Features:

遅延シェーディング

PBR

Compute Shader

Geometry Shader

コーントレーシング

3Dテクスチャ

ボクセル可視化

言語など:

C++17, OpenGL, CMake, Assimp, ImGUI, boost

ルービックキューブ

大学 2020.2

OpenGLでルービックキューブを実装しました

ビルド

動画

時間帯: 一月間

フィーチャー:

遅延シェーディング

アニメーション

ノーマルマッピング

エンバイロンメントマッピング

ライティング(Blinn Phong,ガンマ)

.obj リーダー

サウンド

言語など:

C++17

OpenGL

Visual Studio

boost

Calm Horizon

Global Game Jam 2021.1

三人のプログラマーとUnity3Dアドベンチャーゲームを作りました。他の三人がプロでした色んなことを習いました。

ビルド

動画

時間帯: 二日間

担当部分:

船の操作

インプット

キャメラ

トランジション

イベントシステム

言語など:

C#

Unity

VindZeit

大学 2020.2

大学プロジェクトにチームUnreal Engine 43Dアドベンチャーゲーム作る。二人のデザイナと私でした。

ビルド

トレーラー / 動画

プロローグの動画

時間帯: 五月間

担当部分:

プログラミング (C++とBP)

QTEシステム

キャメラエフェクト

アニメーション

パーティクルシステムと最適化

システムについてデザイナと相談しました

言語など:

C++

Blueprint

Unreal Engine 4

UE4アニメーションプラグイン

大学 2020.2

基本的なDistanceMatchingと基本的なRotationWarpingUE4のアニメーションプラグインとして実装しました。Paragonというゲームとかにはよく使いましたシステム。現在、0-45°のキャラクターローテーションだけが対応できます。

プラグインなしで

プラグインで

時間帯: 四週間

フィーチャー:

アニメーションをキャラクターの速さによって操る

スムーズなスタートとエンドトランジション

ボーンをキャラクターのローテーションによってローテーションする

カスタムUE4のアニメーションノード

言語など:

C++

Blueprint

Unreal Engine 4

液体レンダリング

大学 2020.1

Portal 2っぽいな液体をOpenGLで実装しました。

ビルド

時間帯: 三週間

フィーチャー:

Signed Distance Functionで液体レンダリング

勾配でライティング

Geometry Shaderでビルボードを作る

言語など:

C++

OpenGL

Visual Studio

環境マップをフィルターする

独学 2020.1

OpenGL環境マップをフィルターして玉にキューブマップとしてマップしました。

ビルド

時間帯: 三週間

フィーチャー:

環境マップをサンプル

オフスクリーンレンダリング

Monte Carloフィルター

環境マップをキューブマップに変えました

言語など:

C++98

OpenGL

Visual Studio

基本的なオフラインレイトレーシング

独学 2020.2

チュートリアルでC++のオフラインレイトレーシングのプログラムを作ってCUDAに移動しました。

VS2019でビルドください

レンダー

時間帯: 一週間

フィーチャー:

ディフューズのマテリアル

金属のマテリアル

グラスのマテリアル

DoF

言語など:

C++

CUDA

Visual Studio