タグ

engineと*programに関するsh19910711のブックマーク (24)

  • Jax・Brax・HaikuでGPU引きこもり学習

    sh19910711
    sh19910711 2024/05/19
    "XLA: Tensorflowのバックエンドとして開発された中間言語 / Brax: 物理シミュレーターもJaxで書いてしまえば勝手にGPU上で動いて速いんじゃない?というモチベーション + OpenAI gym風のEnv API" 2021
  • UE4の物理アセットと自作アニメーションブループリントノードでキャラクターの物理挙動をいい感じにする - Qiita

    概要 この記事では、「UE4の物理アセットを使い、アニメーションブループリントノードを自作することで、キャラクターの物理挙動を実装する方法」について記述しています。 物理シミュレーション対象のシェイプとコリジョンは、物理アセットで設定します。 キャラクターの物理、いわゆる骨物理に話を限定します。 先に結果を見せると、この記事の中ではこのようなことをやります。 遅延揺れによる髪の揺れ 階段を揺れながら降りるスライム 背後からグレイマンに襲いかかり肩にのってしまうスライム 背景 物理シミュレーションをカスタマイズしたいと思ったことはないでしょうか。 剛体のパラメータを設定するとか、物理エンジンのパラメータを設定するとか、コンストレイントを設定するという話ではありません。 シミュレーションの内部アルゴリズムをカスタマイズしたいと思ったことはないでしょうか。 僕はたまにあります。 物理エンジンにと

    UE4の物理アセットと自作アニメーションブループリントノードでキャラクターの物理挙動をいい感じにする - Qiita
    sh19910711
    sh19910711 2024/05/03
    "UE4に使われているNVIDIA PhysXは、基本的に剛体向け / 柔体(弾性体、粘性体)と流体向けのシミュレーションは、NVIDIA GameWorksのシリーズの中では、FlexやNvClothやFlowなど別のSDKに分離されています" 2020
  • Unity×レイマーチングによる映像制作の実践手法 / KLab Tech Meetup 4

    ブログ版: https://gam0022.net/blog/2019/06/25/unity-raymarching/ イベント詳細: https://techplay.jp/event/733454

    Unity×レイマーチングによる映像制作の実践手法 / KLab Tech Meetup 4
    sh19910711
    sh19910711 2024/05/03
    "規則的な動きはシェーダーが得意 / レイマーチング: 距離関数という数式で形状を定義 / 映像を構成する3要素: 形状 + 質感 + 演出 / IFS: 自身の縮小コピーを重ね合わせることでフラクタル図形をつくるテクニック" 2019
  • PBDベースで揺れモノ用の物理エンジンを実装した話 - Qiita

    概要 記事はCluster,Inc. Advent Calendar 2017の6日目の記事です。 Unityちゃん付属のSpringBoneが微妙に使いにくかったため、使いやすくなるようにガッツリと作り直してみました。 左がUnityちゃん付属の物理エンジンで、右が今回作ったものです。 従来のものとの違い 改善された点 重力の影響を受けるようになった 1クラスで完結するようになり、セットアップが簡単になった ボーンの軸方向を意識せずに済むようになった 劣化した点 少し重くなった 細かい調整ができなくなった 使い方 物理演算したいGameObjectに Pbd Spring Boneをアタッチし、揺れモノの起点となるボーンを指定するだけで動きます。 仕組み 基的な考え方はPosition Based Dynamicsと呼ばれるものです。 GameObjectそれぞれの各点を質点と見なし

    PBDベースで揺れモノ用の物理エンジンを実装した話 - Qiita
    sh19910711
    sh19910711 2024/04/30
    "Position Based Dynamicsと呼ばれるもの: 前回の位置と現在の位置から速度を求め、重力と減衰、形を維持しようとする力を加え + 求めた速度を元に位置を更新 + めり込んでいた場合、めり込まない位置まで移動" 2017
  • 【Unreal Engine】強化学習を行う方法を調べてみた - Qiita

    目次 1. Unreal Engine上で強化学習を行いたい理由 2. 各種手法の比較 2-1. 内部実行系の手法 以下の4つの方法について紹介します。 ・Python Editor Script Plugin ・UneralEnginePythonPython Foundation Packages ・Neural Network Inference 2-2. 外部通信系の手法 以下の4つの方法について紹介します。 ・Mind maker ・UE4ML ・ML Adapter ・Learning Agent 3. 結局何を使えばいいのか ※記事中のUEはUnreal Engineの略です。 1. Unreal Engine上で強化学習を行いたい理由 強化学習は、機械学習の一分野であり、エージェントが環境と相互作用しながら、試行錯誤を通じて最適な行動を学習する手法です。ゲームエンジンと

    【Unreal Engine】強化学習を行う方法を調べてみた - Qiita
    sh19910711
    sh19910711 2024/04/17
    "Python Editor Script Plugin: UE5から標準で搭載 + Pythonをゲーム内ターミナル,テキストファイル,BluePrintから実行 / MindMaker: UE上で取得したObservationsとRewardの値を外部の実行ファイル(.EXE)へ送信し,そこからActionを受け取る" 2023
  • 文字うごかし研究 - hadashiA

    sh19910711
    sh19910711 2024/01/23
    "3Dメッシュ上に文字を並べるとおもしろい / パーリンノイズのようなランダムだけど傾きななめらかな関数をたくさん合成していくだけで割と自然界の煙や波の動きになぜか似てくる" / 2019
  • Unity Learnチュートリアル「ML-Agents:ハチドリ」で強化学習を始めよう|①Flowerクラスの実装

    ML-Agents:ハチドリ Unityには、強化学習を構築するためのフレームワークであるML-Agentsがあります。また、Unityの公式なチュートリアル&コースウェアを提供するUnity Learnにおいて、このML-Agentsのチュートリアルを提供する「ML-Agents:ハチドリ」があります。 「ML-Agents:ハチドリ」は、Humming bird (ハチドリ)が蜜を吸うゲームの中で、ハチドリが効率的に蜜を吸うことをゴールとして、強化学習を用いてハチドリをトレーニングするための学習コンテンツです。 この記事は、私が「ML-Agents:ハチドリ」を学習した際に、重要だと考えた事項を備忘用にメモするためのものです。 プロジェクト:①Flower.cs プロジェクトでは、個々の花の機能のスクリプトを作成します。ハチドリはこの花と直接やりとりをするので、適切な反応をする必要が

    Unity Learnチュートリアル「ML-Agents:ハチドリ」で強化学習を始めよう|①Flowerクラスの実装
    sh19910711
    sh19910711 2024/01/21
    "Unity Learn: Unityの公式なチュートリアル&コースウェアを提供 / ゲームの中で、ハチドリが効率的に蜜を吸うことをゴールとして、強化学習を用いてハチドリをトレーニングするための学習コンテンツ"
  • 「ドラゴンクエストVIII」は,いかにしてスマートフォン向けに移植されたのか? 最適化からUI設計のポイントまでを開発チームが語る

    「ドラゴンクエストVIII」は,いかにしてスマートフォン向けに移植されたのか? 最適化からUI設計のポイントまでを開発チームが語る ライター:米田 聡 ゲームエンジン「Unity」の開発者向けイベント「Unite Japan 2014」初日である2014年4月7日に,「Unityでコンソールタイトルを移植する 〜ドラゴンクエストVIII 移植から学ぶ大規模開発テクニック〜」というセッションが開催された。 講演の内容はタイトルどおりで,2004年に発売されたPlayStation 2(以下,PS2)用の「ドラゴンクエストVIII 空と海と大地と呪われし姫君」(iOS / Android。以下,DQ8)を,Unityによってスマートフォン向けに移植したときの体験を,開発チームが解説するというものだ。Unityのイベントとはいえ,それだけの話に止まらず,据置ゲーム機用に作られたゲームのインタフェ

    「ドラゴンクエストVIII」は,いかにしてスマートフォン向けに移植されたのか? 最適化からUI設計のポイントまでを開発チームが語る
    sh19910711
    sh19910711 2023/04/11
    2014 / "スマートフォン版のDQ8は縦画面表示 / オリジナルコードはC++で書かれていたがUnityでの開発にはC#を利用 / C++からC#に変換するコンバータを最初に作成 / 元のDQ8はPS2用ディスクの媒体に合わせて作られて"
  • Mirrativ×Unity as a Library 活用事例と開発テクニック - Mirrativ Tech Blog

    こんにちは、Unityエンジニアの菅谷です。今回はUnity as a Libraryの活用事例と開発テクニックとして、以前のLTで紹介した内容をまとめました。Mirrativでの活用事例を通してUnity as a Libraryの強みや課題を共有し、他のプロダクトでの導入の参考になれば幸いです。2021/6〜2021/7にMirrativ×Unity as a Libraryのテーマで行った3のLTをまとめた内容となっています。 mirrativ.connpass.com meetup.unity3d.jp mirrativ.connpass.com MirrativにおけるUnity Mirrativにはエモモという配信をサポートする3Dアバターが存在します。ユーザーは衣装やアクセサリーなどのアイテムを組み合わせてエモモを着飾ることができます。MirrativはiOSはSwift

    Mirrativ×Unity as a Library 活用事例と開発テクニック - Mirrativ Tech Blog
    sh19910711
    sh19910711 2022/02/11
    "Unity as a Library(UaaL)はUnityをネイティブアプリのライブラリとして利用する技術で、アプリで作ったViewとUnityで作ったViewを共存させられます / Unity2019.3で正式サポート"
  • ゲームエンジンを自作しながら思ったこと - Qiita

    稿では、私が長く続けている個人でのゲームエンジン開発で得られた知識や経験を紹介します。 嘘ですポエムです。アルコールとか入ってます。 当はかっこいいこと言ってみんなの役に立つこと書きたかったです。書きたかったけど無理だったよ…。 ひとつのゲームエンジンを作り続けてもう何年も経ちます。その間コンセプトも定められず満足なメジャーリリースもできないままだらだら作り続けてしまったので、あんまり役に立つことは書けなさそう。 とりあえず昨今のゲームエンジンの開発に必要な技術要素と、私が開発している Lumino というゲームエンジンでの代表的な実装例を紹介する、みたいな体で書いてみようと思います。なにか間違ってそうでしたらコメントお願いします。 多分、ちょっとでも役に立つかもしれないのは、「ゲーム作ってたけど気が付いたらゲームエンジン作ってて、ゲームが出来てないけどゲームエンジン公開してみたくなっ

    ゲームエンジンを自作しながら思ったこと - Qiita
    sh19910711
    sh19910711 2022/02/05
    "モチベの源泉が変なところにあったり、イイ感じに知的好奇心を満たしてくれるテーマであったり、いろんなものが混ざってゲームエンジンというものを書きたくなっちゃう"
  • Shaderアートのススメ Particle編 - Qiita

    はじめに なんかShaderでエモい感じのできてBOOTHで配ったら興味ある人がいたので適当に解説します。 BOOTHはここからどうぞ→Galaxy Shader - Voxel Gummi - BOOTH ぶっちゃけShurikenとか使えば良さそうな気がしますがテッセレーションの勉強がてら座標操作の練習がしたかったんでゴニョゴニョした次第です。 まずはコード全文をペタリ // Copyright (c) 2019 @Feyris77 // Released under the MIT license // https://opensource.org/licenses/mit-license.php Shader "Unlit/Galaxy Shader" { Properties { [IntRange]_Tessellation ("Particle Amount", Range(

    Shaderアートのススメ Particle編 - Qiita
    sh19910711
    sh19910711 2021/12/29
    "粒子感 > 中心部(コア)を白飛びさせその周りを色付きのグローで囲うことで人が見たときに発光していると錯覚させます / グローの幅はコアの大きさよりも大きくするのがポイント"
  • 物理エンジンの恐怖::Colorful Pieces of Game

    今では物理エンジンはunityやUEといった統合型ゲームエンジンが普及したおかげで使うのがとても簡単になったのだけど、これでカーレースのようなゲームを作ると、正しく動く車を作るのは実は超大変だって話をちょっと書いてみたい。 話は2007年に戻る。 2007年にメディアワークスを辞めるあたりで、韓国でPS2のゲームを作っている会社とつながりが出来、そこでカーレースを作ったのだけど、これが全オリジナルの物理エンジン+3Dエンジンのゲームだった。 で、これを作る時に、いろいろとんでもない目に会ったおかげで、物理エンジンは万能ではないし、問題だらけだって知ったわけだ。 さて。 物理を使うゲームの作り方はいろいろあるのだけど、全部がいわゆる剛体物理で動き、フェイクはひとつもない、すなわちあらゆるものはフォースで動いているとする。そして物理エンジン内部のエミュレーションのΔTはフレームレート、すなわち

  • インフラエンジニアがUnityをやるべきたった一つの理由

    インフラエンジニア、特にネットワークエンジニアさんもデモをする時はpingだけでなく、もうちょっと派手は演出のデモしたら?Unityで簡単に作れまっせ、って話しです。

    インフラエンジニアがUnityをやるべきたった一つの理由
  • 自作シンプル物理演算ゲームを強化学習で攻略させる【Unity ML-Agents v3.0】 - Qiita

    自作シンプル物理演算ゲームを強化学習で攻略させる【Unity ML-Agents v3.0】 以前から機械学習などに興味があったものの、難しそうでためらっていたのですが、Unityで強化学習ができるML-Agentsというものがあると知り、理論についてほぼ何も知識のない自分でも、なんだかいけそうだと思って試してみました。 まずは公式サンプルゲームを動かしてみたのですが、何か自作ゲームを学習させてみないと理解が進まないと思い、なるべくシンプルで最小限の構成になるようなゲームを考えました。そして、せっかくUnityを使うので物理演算も入れたい。 そこで考えたのが、上から降ってくる物体をヘディングのようにバウンドさせるゲームです。人間が手動でプレイするとこんな感じになります。これを強化学習させて攻略させてみました。 これ以下の内容はML-Agentsの公式サンプルを動かすところまで出来る方が対象

    自作シンプル物理演算ゲームを強化学習で攻略させる【Unity ML-Agents v3.0】 - Qiita
  • オートエンコーダを使って強化学習してみた - Qiita

    オートエンコーダ:抽象的な特徴を自己学習するディープラーニングの人気者 Unity ML-Agentsで、カメラから得た画像をオートエンコーダで次元圧縮し、強化学習してみました。 なぜオートエンコーダを使うのかを説明する前に、まず基的な強化学習の形とその問題点について解説します。 基的な強化学習の形とその問題点 強化学習の目的は、ある環境において、ある状態 s のとき最適な行動 a をとる方策 π(a|s) を見つけることです。 強化学習入門 Part2 - TensorflowとKerasとOpenAI GymでPolicy Gradientを実装してみよう! 状態sが 0,1,2,3,... のように離散値であれば、状態・行動の表を作って方策 π を表現することができます。 DQNをKerasとTensorFlowとOpenAI Gymで実装する しかし、状態 s が連続値になれば

    オートエンコーダを使って強化学習してみた - Qiita
    sh19910711
    sh19910711 2019/06/11
    "強化学習: ある状態 s のとき最適な行動 a をとる方策 π(a|s) を見つける / 状態 s が連続値になれば、方策 π を上のような表で表現することはできないので、何かしらの関数近似器を使って近似する必要"
  • Tilemapはいいぞ!

    2018年6月9日(土)に開催されたABC 2018 Springで発表した「Tilemapはいいぞ!」の資料です。 ABC 2018 Springの公式サイト https://abc.android-group.jp/2018s/

    Tilemapはいいぞ!
  • 【Unity】ドット絵に照明効果を追加する - テラシュールブログ

    今回はドット絵にライティングを追加するアプローチについてです。 ドット絵 は 光の演出 を手に入れた!!! 光が届く範囲が明るくなるだけで良い 光の陰影や光るパーツなどを表現するのも欲しい ドット絵に影もつけたい 感想 関連 ドット絵 は 光の演出 を手に入れた!!! 今回はドット絵に光の演出を試してみました。 例えば暗い洞窟や完全自動で動く工場など、ステージ全体が明るくない場所での表現において、光による演出は中々に楽しそうです。 なお、今回使用するのは殆どTilemapかSpriteRendererで構成されたものです。ライティングを施さなければ大体こんな感じになります。 この辺り通常の3Dであれば、この辺りは最初からうまい感じに表現してくれるのですが、ドット絵はあくまでも2Dのため、一工夫が必要になってきます。 さて、光表現は大きく分けて4つの要素が考えられます。 光の届く範囲が見える

    【Unity】ドット絵に照明効果を追加する - テラシュールブログ
  • SpatialOSを使えばMMOゲームを作れそうな - Qiita

    インターネットをご覧の皆さん こんばんは。 SpatialOS(https://improbable.io/games)を触ってみたところ、なかなか面白かったのでメモがてら記事を書いてみます。 SpatialOSとは? Improbable社(https://improbable.io)が開発している、 MMOゲームの開発&実行プラットフォームです。 MMOゲームに求められる要件をシンプルに表現するなら、 多人数のプレーヤで同一空間を共有する 空間内のオブジェクトの状態を全ユーザで同期させる といったところでしょうか。 SpatialOSはこの空間共有&状態同期を行う仕組みを提供します。 今年はGoogle Cloud NextやGDCでもセッションを行っていたので、目にされた方もいるのではないでしょうか。 Google Cloud Next '17 | Herman Narula Day

    SpatialOSを使えばMMOゲームを作れそうな - Qiita
  • その55 そもそも「w」って何なのか?

    ホーム < ゲームつくろー! < DirectX技術編 その55 そもそも「w」って何なのか? ローカル座標にある頂点は(x,y,z,w)という4次元のベクトルで定義されます。「w」・・・これ、謎な存在です。しかも、ローカル座標にある状態では、w=1とします。w=1・・・なぜ?どうして0じゃないの?そもそもコレ何?何に使われているの?どうして必要なの?謎な存在の疑問は尽きません。 そこで、この章ではそんな不思議な存在wの値の意義について調べてみたいと思います。 ① wの変化の旅を見てみよう wが実際にどう作用しているのか、実際にローカルから画面に描画されるまでのプロセスで確かめてみるとよ~~くわかります。長い旅に出発です。 まず、ローカル座標にある頂点は、冒頭で出てきたように(x,y,z,w=1)で定義されます。今、この頂点にワールド変換行列を掛け算してみます: 行列中の「m」というのはス

  • JavaScript で流体シミュレーションを試してみるテスト - CX's Hatena Blog

    最近、Google から物理エンジンに関して面白そうなライブラリが登場したようなので jsdo.it で試してみました。 Googleがオープンソースの2D物理エンジンLiquidFun 1.1をリリース このライブラリは「Box2D」(2D の物理エンジンライブラリ)に、流体シミュレーション関連の機能を拡張したライブラリとなっているようです。 (ちなみに、JavaScript 版のライブラリは、C++ 版を Emscripten でコンバージョンしたものとなっているようです。) Wave Machine Particles Soup Soup Stirrer Impulse Rigid Particles Elastic Particles Surface Tension Theo Jansen サンプルを動かしてみるだけでも、結構楽しいので、興味がある方は試してみては如何でしょうか。

    JavaScript で流体シミュレーションを試してみるテスト - CX's Hatena Blog