概略
Arch Linuxをこよなく愛するネイティブアプリエンジニア.何故かFPGAも好きです.
中学2年のとき,ゲームを買ってもらえない反動から自分でコンピュータを買い,パソコンにハマって抜け出せなくなりました.
コンピュータを人類のために活用できるようになるために,技術研鑽をしつつ,ビジネスについても勉強中です.
Links
GitHub | https://github.com/clockvoid |
https://twitter.com/clockvoid | |
Google Play | https://play.google.com/store/apps/dev?id=6094433200525863600 |
すき
私はシンプルで簡素なものが好きです.したがって,コンピュータは全く向いていないと思われます.
それでもVimやAndroidといった非常に複雑な系も好いている矛盾した感情も持っています.多分複雑な系をシンプルに使うことに喜びを感じています.
最近はユーザが求める志向が複雑化していることもあり,複雑な要件やアニメーションをアプリ上で表現しなければいけないことも増えてきましたが,一見制御不能なカオスを制御可能な形でアプリとして表現することに喜びを感じています.
エンジニアリング
現在,業務では主にAndroidアプリ開発をやっています.
Androidはプラットフォームとしては中学2年の頃から開発を行っており,ユーザとしても,アプリエンジニアとしても10年以上の付き合いとなっており,思い入れが強いです.
また,Android以外にも,このサイトの構築はすべて1から自分で行っているほか,大学ではFPGAをつかって論理回路を設計していました.このような経験から,ハードウェアレベルの低レイヤからWebアプリケーションまで,縦に広く興味があります.
キーワード
- iOS
- Android
- Linux
- Arch Linux
- Tmux
- Neovim
- Device Driver (Character deveice)
- Binary analysis
- Arch Linux
- FPGA
- VerilogHDL
- Vivado HLS
- Zynq
研究
研究ではFPGAを使ったパストレーシングの高速化の研究をしています.
パストレーシングはレイトレーシング法と呼ばれる光学を用いたCG作製技術の一つで,まるで写真かのようなリアルなCGを作成することができる一方で,計算に時間がかかってしまうという問題を抱えています.
近年,NVIDIAがゲームのためのレンダリングをラスタライズからパストレーシングへ移行すると言いだし,少しだけ注目されています.
パストレーシングをゲームで使用するためには,パストレーシングで使用する計算をハードウェア実装し,効率的に計算しなければ難しいことがわかっており,私は自分なりにFPGAを使った高速化を試しています.
使用技術
- FPGA(Xilinx社のものを使用)
- VerilogHDL
- 高位合成