2021 やること
アニメを作る
自分の技術的興味と好みを満たせるものが何かと考えたときに 3DCG アニメがそれだと気づきました。 昔から完成作品を作ることよりもアセットパイプラインを整えることにのめり込みがちなのですが、本質に集中していきたいです。
ツールをいくつかリリースする
2020 年末は しわラボ を作っていました。 実用に供するにはまだ先が長いので引き続きがんばります。 3D のパイプライン整備、モデル・ポーズデータの作成、web フロントエンド開発とタスクが幅広いのでおもしろいです。 また、他にもアイデアだけ温まっている制作ツールがたくさんあるのでその中から一つ実装したいと思っています。
しかし、個人制作かつ中途半端な状態から公開していくような作り方をする場合、リリースって何なんでしょうね。
シェーダー芸に入門する
ピクセルシェーダーはある種の絵を描くための画材として非常に優れています。 そのスイートスポットを自分の絵に取り込みたいです。 最近 shadertoy をみてすごいやつを真似ています。
普段お世話になっている OSS を読む
何かをイチから作るのはおもしろいですが、そればかりだと自分のわかっている範囲のコードしか書かず技術的な向上が少ないので既存のすばらしいソフトウェアスタックに学びたいです。
ネタ帳:
量子情報を学ぶ
SF の面白さは現実世界の見方が変わる点にあると思っていますが、そもそも世界のありかたを古典物理の範囲でしか理解できていない(いや、古典物理すらわからない……)現状では楽しめる範囲が限られているように感じました。 古典計算機プログラマーがいらなくなった場合に量子計算機プログラマーに転身できるようになるという打算も込みで、世界の解像度を上げるために量子情報と関連する分野を芋づる式に勉強します。
【Blender】 いらないシェイプキーをまとめて削除する
使わないシェイプキー(Maya, Unity で言うブレンドシェイプ)が大量にあってファイルサイズが無駄に肥大化している場合、Python スクリプトで一括削除すると便利です。
シェイプキーが設定されているメッシュが m_avg オブジェクトにあり、Basis シェイプキー以外を削除したい場合は以下のようなスクリプトを実行します。
import bpy # 消したいシェイプキーが存在するメッシュのオブジェクト名 target_name = "m_avg" # 当該オブジェクトを選択する bpy.data.objects[target_name].select_set(True) # シェイプキーのリストを取得する shape_keys = bpy.data.objects[target_name].data.shape_keys.key_blocks # シェイプキーのリストを逆順に舐める # (先頭から消すとインデックスがずれるので後ろから消す) for i, shape_key in reversed(list(enumerate(shape_keys))): # 消したくないシェイプキーは除外する if shape_key.name != "Basis": # シェイプキーを選択して、削除 bpy.context.active_object.active_shape_key_index = i bpy.ops.object.shape_key_remove()
参考
tangent がないモデルに法線マップを貼る
キーポイント
tangent space 法線マップを貼る際には、法線マップを作ったときの接空間を頂点ごとに復元する必要があります。一般には DCC ツールからのエクスポート時やゲームエンジンへのインポート時に tangent を計算してモデルの頂点属性に tangent を追加することが多いですが、頂点属性に tangent を入れずにフラグメントシェーダーで tangent を動的に計算することで接空間を復元することもできます。
tangent 再計算のためのキーとなるのが GLSL の dFdx() / dFdy() 関数(HLSL では ddx() / ddy() 関数)です。tangent を計算するには UV 座標とピクセルの位置座標の偏微分が必要ですが、dFdx() / dFdy() を使えばそれが求められます。(ただし、この関数で計算できるのはスクリーン座標系での偏微分なので適宜座標系を変換する必要があります。)
詳細
- チュートリアル13:法線マッピング
- 隣接頂点の uv, position から tangent を計算するための具体的な方法が書いてある
- MikkTSpace.com
- 法線マップを作るときによく使われているらしい実装
- Followup: Normal Mapping Without Precomputed Tangents | The Tenth Planet
- フラグメントシェーダーで tangent を計算する方法
VFX of 2020.04
ツイッターで見たかっこいいエフェクト / 3DCG のまとめ 2020.04
got really inspired by @playtankhead's smoke effects and had some massive fun with volume textures #VFXfriday #ue4 #unrealengine #madewithunreal #vfx #rtvfx #gamedev pic.twitter.com/BfrhCUCxIH
— 💀𝖇𝖋𝖙𝖉💀 (@bftd) 2020年4月3日
Nature magic shield. Made with UE4#VFX #Shield #Effect #Magic #FX #RealTimeVFX #Hovl #HovlStudio #UE4 #UnrealEngine #gamedev #MadeWithUnreal pic.twitter.com/FwAlvpHpkA
— Vladyslav Horobets (@HovlStudio) 2020年4月3日
Chest VFX😆#Unity #unity3d #vfx pic.twitter.com/d0du4r0U97
— Sakura Rabbit 樱花兔 (@Sakura_Rabbiter) 2020年4月12日
Strange Brew | Practicing fluid tricks in #Houdini.
— Chris Cousins 🇪🇺 (@ChrisCousins_) 2020年4月12日
This just uses the 'Pop-Fluid' node, no special fluid solvers - quick and clean with low particle numbers too (max 600k). Then delete 99% of them and use the rest for bubbles. Rendered with @redshift3d pic.twitter.com/9GRYvxQUMr
Friday evening particle effect doodle with #VisualEffectGraph in #Unity. I just thought to try to create particles that are spiraling and spinning around a force field... #madewithunity #gamedev #abstract #generative #realtimevfx #vfx pic.twitter.com/iURnAZE3Kv
— Olli Sorjonen (@Olmirad) 2020年4月24日
UI fire test🥳#Unity #unity3d #madewithunity #vfx pic.twitter.com/cSlJ75iVDC
— Sakura Rabbit 樱花兔 (@Sakura_Rabbiter) 2020年4月26日
Two different styles #realtimevfx #VFX #UE4 #UnrealEngien #UE4Study #gamedev pic.twitter.com/HHHr0mP1f3
— Husky (@HHHHHusky) 2020年4月27日
背景で地面と馴染ませるのによく使われるPDOですが、セル調のぶっ刺しを解決するのにも使えますね。
— Wataru@The Last of Us Part II (@WataruVFX) 2020年4月30日
PDO(Pixel Depth Offset) is useful not only for environment assets also cel shading FX in order to blend naturaly to ground (opaque surface).#UE4 #realtimevfx #gamedev #shader pic.twitter.com/ErZPG7h9cT
VFX of 2020.03
ツイッターで見たかっこいいエフェクト / 3DCG のまとめ 2020.03
Friday evening #VisualEffectGraph thing in #Unity. I just wanted to doodle a while with voxel-style things... Real-time baked SDF (from meshes) and then the data is visualized with VEG. #madewithunity #indiedev #gamedev #abstract #realtimevfx pic.twitter.com/zldFTfpl5z
— Olli Sorjonen (@Olmirad) 2020年2月28日
Sketch [#MadeWithUnity | #Houdini] pic.twitter.com/DlwVF03HqY
— John Parsaie (@johnparsaie) 2020年2月29日
💡The core of the tricky soft ball algorithm is from Entagma's Houdini tutorial https://t.co/x8GL4796GJ. I implemented and optimizated it for mobile web pages. The source code is on https://t.co/XdjQeLv29W. Feel free to use it. 😀#threejs #web #webdev pic.twitter.com/fYgjzck73z
— Sen Zh (@SenZh4) 2020年3月1日
Cinema4d stillframes countdown#cinema4d #redshift3d #artistic #octanerender #animation3d #vfx pic.twitter.com/yal5JQyziN
— Daniel Ñañez (@Daniela50018712) 2020年3月1日
Divide 2. It was a little tricky figuring out how to get this effect onto a curved surface with the polygon restrictions
— Perry Cooper (@perry__cooper) 2020年3月1日
.
.
.#cinema4D #c4d #dailyrender #render #art #arte #design #3D #cgi #satisfy #satisfying #octane #otoy #studioshare #surface #compilation #divide #divider pic.twitter.com/tVW5vH9m7r
I'm incredibly proud to announce Mitsuba 2 (https://t.co/U62rBn8Yqq), the result of more than three years of hard work by my group (@merlin_ND, @gllmLoubet, @seb_spe, Delio Vicini, @tizianzeltner) pic.twitter.com/8w109Zkrrx
— Wenzel Jakob (@wenzeljakob) 2020年3月3日
Mitsuba 2 のソースコード公開
Light laser beam with🌈spectrum😇#Laser #LaserBeam #LaserRay #VFX #FX #Unity #Unity3D #MadeWithUnity #Hovl #HovlStudio pic.twitter.com/OYktj66fGr
— Vladyslav Horobets (@HovlStudio) 2020年3月4日
Fire & Smoke effects for @MandragoraGame, made with #FluidNinja for Unreal#indiegames #UnrealEngine #UE4 #realtimevfx #vfx #fluidsimulation #mandragora pic.twitter.com/6mKBdFZRLz
— Andras Ketzer (@FluidNinjaVFX) 2020年3月4日
New operator in Operation Lovecraft: the investigator cyberdoll Galatea is joining the team with her signature schiavona and revolver.https://t.co/rt39cISH1d#3dart #ue4 #UnrealEngine #gamedev pic.twitter.com/EtNTHFDSVj
— Project Helius (@PROJECT_H_Dev) 2020年3月5日
Today is a lightning day#ue4 #vfx #realtimevfx #visualeffects pic.twitter.com/hNr8TcAfKO
— マックス (@pelengami) 2020年3月5日
I've finally started adding some #Houdini into my effects. Really love the workflow so far...#gamedev #VFX #realtimeVFX #VFXreel #MadeWithUnreal #VFXfriday #UE4 pic.twitter.com/CmZhtdBpCt
— pmargacz (@pmargacz) 2020年3月6日
Aandddd..
— Marco (@MarcoPPavanello) 2020年3月7日
Real Snow is now part of Blender 2.83 :)https://t.co/rKr1dbAGXC#b3d pic.twitter.com/kAlJPoqTa1
Mohammed Kamal Ahmed shared his experience with a new method for stunning tree simulations in #Houdini:https://t.co/WpqCjw4kao#gamedev #indiedev #3dart #simulation #3dmodeling #rendering @sidefx pic.twitter.com/anog38PSN1
— 80 LEVEL (@EightyLevel) 2020年3月8日
Experimenting with cheap yet good looking fur for our monsters. Or as Mandragora VFX guy @AndrasKetzer has put it: "Custom fur technology, based on parallax mapping, modulated with noise."#UnrealEngine #UE4 #VFX #indiegame #indiedev #gamedev pic.twitter.com/2P08hlctdv
— Mandragora (@MandragoraGame) 2020年3月11日
汎用的なアイデアな気がする
Quick view of the technique I use to make toon like fx with no spritesheet, using dissolve shaders.
— Matias Mahler (@mahler_matias) 2020年3月13日
The nice thing about this technique its that you can quickly clearly visualize the end result and the timing.
#vfxfriday #realtimevfx #shader #gameart #photoshop #UE4 pic.twitter.com/1vfewxKRdE
汎用的なアイデアな気がする(2)
Flash Dash!!!
— Hactrix - DevLog (@Hactrix) 2020年3月17日
----#UE4 #indiedev #gamedev #unity3d #screenshotsunday #screenshotsaturday #VFX #Speed pic.twitter.com/HHsz2XAdno
Waterfalls & Flowmaps for @MandragoraGame, made with #FluidNinja for Unreal#indiegames #UnrealEngine #UE4 #realtimevfx #vfx #fluidsimulation #mandragora pic.twitter.com/fH59l6aGGQ
— Andras Ketzer (@FluidNinjaVFX) 2020年3月19日
It's either AOE damage of buff.... not sure about this spell... #gamedev #VFX #realtimeVFX #VFXreel #MadeWithUnreal #VFXfriday #UE4 pic.twitter.com/Hm9huJj8Td
— pmargacz (@pmargacz) 2020年3月20日
The ball is here again😄#Unity #unity3d #vfx #madewithunity pic.twitter.com/r8wGYWqOpk
— Sakura Rabbit 樱花兔 (@Sakura_Rabbiter) 2020年3月21日
𝗢𝗿𝗯 𝗼𝗳 𝘁𝗵𝗲 𝗥𝗶𝘀𝗶𝗻𝗴 𝗦𝘂𝗻 - Lockdown render #4 ☀️🏠 Music by The Animals.#houdini #redshift3d #motiongraphics #motiondesign #3drender #digitalart #vfx #cgi #house #rising #sun #theanimals #oldtimers #60s pic.twitter.com/awjKRkdIrb
— Q. (@qornflex) 2020年3月23日
Created this cool Loot VFX with a Gemstone surprise inside. And I shared the process in link below, so you can create your own Loot Boxes too!
— Gabriel Aguiar Prod. (@GabrielAguiarFX) 2020年3月24日
Check it out: https://t.co/jYZLeXV2zO#VFX #Effects #Unity #Unity3d #realtimeVFX #indiedev #gamevfx #madewithunity #gamedev #gameart pic.twitter.com/bxXci3e1xA
I have a good update for the radial slash#ue4 #vfx #realtimevfx #visualeffects pic.twitter.com/ELuEkpJwJp
— マックス (@pelengami) 2020年3月25日
8 hour FX sketch I recently did. #realtimevfx #vfx #UnrealEngine4 #UE4 #vfxfriday #gamedev pic.twitter.com/FTjZ4xIaD2
— Jamal Coleman (@jamdatFX) 2020年3月27日
LaserEye #UE4 #Unrealengine #UE4Study #gamedev #VFX pic.twitter.com/NXhF7cAPc3
— 犬二哈 (@HHHHHusky) 2020年3月30日
Afternoon #VisualEffectGraph thing in #Unity 😃. Fluctuating lines which don't make U-turns back and they move pretty much in diagonal directions, making turns only after certain intervals of time. #madewithunity #gamedev #generative #abstract #realtimeVFX #vfx pic.twitter.com/o9qnJZ7ADw
— Olli Sorjonen (@Olmirad) 2020年3月31日
VFX of 2020.02
ツイッターで見たかっこいいエフェクト / 3DCG のまとめ 2020.02
I've been polishing up my volumetric fog-cloud. finally got the fluffy dry ice look <3💨#UE4 #gamedev #realtimevfx #techart pic.twitter.com/GyjbId4CFq
— Asher Zhu (@Vuthric) 2020年2月8日
解説:Create nice and feasible volumetric cloud in Unreal Engine 4 | Asher.GG
Test 444 2d Flockimg #unity3d #madewithunity #generatedesign #creativecodimg #realtime pic.twitter.com/9t9bKcVzZV
— Wenzy (@ziyangwen) 2020年2月9日
Breath of the Wild inspired Hit Impact FX - files up for patrons! Lots more too, so if you like Unity shaders and FX, come join the party. (Updated the website with links to gifs, because still images are boring) https://t.co/V79pA4gfpV#unity3d #AmplifyShaderEditor pic.twitter.com/X59TKoXg1m
— Edward del Villar (@Ed_dV) 2020年2月10日
thorn and you between#madewithunity #gamedev #indiedev #unity3d pic.twitter.com/L2a9ickuvB
— Tyler Swietanski (@justadog_ski) 2020年2月11日
ヤマツツジ Blenderで制作 pic.twitter.com/dWBDBvt1cP
— taracod (@dknrbssntri) 2020年2月11日
Fire magic circle🔥🧙♀️#Fire #Magic #Unity #Unity3D #MadeWithUnity #gameDev #VFX #Effects #RealTimeVFX #Hovl #HovlStudio pic.twitter.com/121Ad11Ust
— Vladyslav Horobets (@HovlStudio) 2020年2月11日
卒業制作、完成版です!!https://t.co/7M0Eay8IQ3
— TF_siri (@TF_siri) 2020年2月12日
曲は削除さん@sakuzyo_skz
さんの「Creamy Room」をお借りしています。#Houdini #3dcg #animation #MotionGraphics #卒業制作
Me make burst laser. This time I layered 3 camera shakes just for the heck of it :) #UE4 #gamedev #VFX pic.twitter.com/Ht6sCNheO3
— Tom Francis (@TomFrancisVFX) 2020年2月17日
I like how stylized this is looking, completely procedural! #unity3d #gamedev #indiedev pic.twitter.com/mgaFyGygfY
— Klemen (@klemen_lozar) 2020年2月17日
I often saw such effect in different portfolios and tried to make it. Sword is also mine😀#Fire #Sword #Unity #Unity3D #MadeWithUnity #gameDev #VFX #Effects #RealTimeVFX #Hovl #HovlStudio pic.twitter.com/QOBf6Ra8La
— Vladyslav Horobets (@HovlStudio) 2020年2月18日
ミサイル用のロケットエンジン作ってる#blender pic.twitter.com/aoS9y9HQoy
— wanoco4D (@wanoco4D) 2020年2月19日
Did a little more work on the fire VFX. Pew, pew & pew. 🙃#AmplifyShaderEditor #madewithunity #VFX #RealtimeVFX #gamedev #indiedev #unity3d pic.twitter.com/HlMDQRey0q
— Bertram Raahauge Jensen (@MrB_Jensen) 2020年2月19日
2D Flame practice (2020 year) https://t.co/HOUTy58yfU pic.twitter.com/Z24MI7BbG9
— Real-Time VFX (@realtimevfx) 2020年2月20日
#UE4 #SpeedTree pic.twitter.com/lOsGlJNXQT
— Koola (@Koola_UE4) 2020年2月22日
Oh, and also some trail practice. 🧐🙃#AmplifyShaderEditor #madewithunity #VFX #RealtimeVFX #gamedev #indiedev #unity3d pic.twitter.com/SXkSpAgntE
— Bertram Raahauge Jensen (@MrB_Jensen) 2020年2月22日
techno worms🐛#houdini #sidefx #cgi #vfx #vellum
— Open Mind (@NeverMindMedia) 2020年2月25日
Music: Mr Oizo - Positif pic.twitter.com/YfQTXgOi4w