graphics.hatenablog.com

テクニカルアーティストの技術を書き殴るためのメモ帳

エンジニアTA向けGUIチュートリアルとしてのファイルエクスプローラ実装。

そろそろPySideをちゃんと覚えようと思ってファイルエクスプローラをつくってみた。 これ個人的に GUI ネタとしてはわりといいかんじだと思ってるのでざっくり紹介してみる。エクスプローラっていろんなGUIネタが詰まってるから、チュートリアルとしてはたぶ…

2回目のP2P、っぽいなにか。

前回の続き。 サーバからピアへの返信をメッセージングからHTTPに変更した。 サーバからピアへの返信をJSON形式に統一した。 再利用できるように全体的にコードを整理した。 github.comgraphics.hatenablog.com

はじめてのP2P、っぽいなにか。

NSQとHTTPをベースにしてトポロジっぽいものを組んでみた。とはいえネットワーク周りはまったくの専門外なので、とりあえずは 個数が動的に増減する複数のクライアントノード間でいいかんじに分散処理できること ネットワーク上にサーバがいないときにクライ…

「C#のコードルールについて」に反応してみる。

【技術サロン】C#のコードルールについて(2016/12/7) – 株式会社ロジカルビートあくまで非ゲームプログラマないち C#er として、ということでひとつ。

Slackとかにおもうこと。

upgrade.all-in.xyz thebridge.jp もちろん、全員がマルチタスクでさくさく処理できるようになることは望ましいのですが、 組織が大きくなればなるほどコミュニケーションの設計を最適化すべきですね。これはまったくその通りだと思っていて、もうちょっと気…

UnityScriptとDLL周りのあれこれ。

DLLにするとUnity上でリビルドがかからないから速くていいとか、実際どうなん?みたいなところ。github.com Mono.CSharp.Evaluator 初期化 式の評価 Unityへの組み込み案 smcs プロセス呼び出し Unityへの組み込み案 スクリプト → DLL DLL → スクリプト

TrueTypeFontで遊んでみた。

最近はどうだかよく知らないけど、一昔前にウェブ界隈でフォントのサブセット化なるものが流行ってたらしい。ウェブフォント、つまりHTMLと一緒にフォントを提供して、コンテンツ制作者が意図する通りの文字列描画を行うというものがあるんだけど、特に日本…

テクニカルアーティストのためのデータベース入門 (9) パフォーマンス最適化

最初のリリースまではデバッグ大変だからちっちゃいデータセットで試しながら進めてて、とあるタイミングで本番規模のデータを流し込んだら最初のロードに数秒とかかかっちゃったりして。そういうときに、可能な限り悩まずに状況を改善したい。 共通 サーバ…

テクニカルアーティストのためのデータベース入門 (8) O/Rマッパー

実際のところ宗教論争に近いんだけど、個人的には、TAがインハウスで扱うようなDBならSQLだけで十分だというスタンス*1*2ではある。とはいえイマドキそんなことも言ってられないし、書くだけ書いてみる。とりあえず、「O/R マッパー」と毎回書くのはだるいの…

テクニカルアーティストのためのデータベース入門 (7) SQLのはじめの一歩

テーブル内のデータの操作方法、とりあえずこれだけ覚えておけば、最初のうちはあまり困らないと思う。最初に書いたとおりMySQLを前提に進めてみる。とりあえず試すなら MySQL Installer でセットアップするのが一番楽。Server Only でインストールして、ク…

テクニカルアーティストのためのデータベース入門 (6) テーブル制約

前回の続き。DBの中身をきれいに保つための設定集。 データを記録するときのルール設定 not null unique auto increment primary key テーブルをまたぐデータの整合性 set null cascade restrict graphics.hatenablog.com

テクニカルアーティストのためのデータベース入門 (5) 正規化

前回紹介したエンティティとリレーションを、実際にどうやってDBに落とし込むか。何回かにわけてざっくり書いてみる。完成品はこちら。オレオレフォーマットだから違和感あるかもだけど、まぁ雰囲気だけ伝われば。 正規化 要素のピックアップ 先読みと抽象化…

テクニカルアーティストのためのデータベース入門 (4) 「エンティティ」と「リレーション」

アセットの要素分解 エンティティ リレーション アセットのER表現 graphics.hatenablog.com

テクニカルアーティストのためのデータベース入門 (3) データ保全

チーム内に土下座行脚をしたくなければ、まずはデータの守り方を覚える必要がある。 バックアップ 丸ごとバックアップ 操作のバックアップ 削除フラグ graphics.hatenablog.com

テクニカルアーティストのためのデータベース入門 (2) 「リソース」と「アセット」と「メタデータ」

データベースには、その名の通り「データ」を保存することができる。 TAはどんな目的でDBを使うことができるのか、DBで何が表現できるのか、DBに何を保存するのか。 「リソース」と「アセット」 リソースの使われ方(利用目的) リソース同士の関係性(依存…

テクニカルアーティストのためのデータベース入門 (1) おことわり

TAはインフラエンジニアではなければ、データベースエンジニアでもない、もちろんプログラマでもない。*1*2たとえばGoogleで「データベース」と検索すると、正規化だのチューニングだの、色々出てくる。そういうのを、どういうふうに気にするか。この記事の…

テクニカルアーティストのためのデータベース入門 (0) 目次

テクニカルアーティスト(以下、TAと呼ぶ)とデータベース(以下、DBと呼ぶ)は、実はとても相性が良い。ただ、日本のTAは何故かアーティスト出身がとても多いせいか、便利さがあまり知られていないような気がする。このご時世ぐぐれば大量の情報がでてくる…

Version control for game development

gamedev.stackexchange.comちょっと思うところがあったので脳内をできるだけそのまま書き下してみる。 VCSについてはsvn/alienbrain/git/perforceを業務レベルで扱ったことがあるので、そこそこの話をする立場にはなれてるのかなーと思ってはいる。

LINQを理解するためのC#についての補足。

前の記事の補足。graphics.hatenablog.com

C#における「列挙」の意味と、LINQについて。

こないだ会社の先輩と話しててあれこれ考えたので、自分がLINQを理解した過程を言語化してみる。対象は、とりあえずC++あたりの適当な言語で数年程度の経験がある人。プログラミングの地力さえあれば、C#についてはなんとなく読み書きできる程度で構わない。…

Maya .NET API をそこそこ真面目に叩いてみた(シーングラフ編)。

最近ちょっとした心境の変化などもありつつ .NET API が気になってきたので、少し時間をとってちょっと真面目に叩いてみた。結果、環境によっては決して悪くない選択肢だという感触を得たので、ぼちぼちメモっておくことにする。なお検証用のテストコードに…

Maya .NET API を叩くときの雛形。

Mayaを起動せずにビューの開発を進めるためのテンプレ。 github.com

Roslyn の CSharp.Scripting を使ってみる。

自分用のメモも兼ねてざっくりまとめてみる。 github.com

SWIG最新版で使えるC++11機能一覧。

毎回ドキュメント確認するのしんどいから、自分でざっくりまとめてみた。あくまで自分が理解できた範囲内での記述なので、なんか変なとこあったら指摘してもらえると嬉しいです。 SWIG and C++11C++11自体については、このあたりを参照すればよいかと。 More…

"Effective Modern C++" を読んだメモ。

週末に届いたので読みながら思ったことのメモ。O'Reilly Japan - Effective Modern C++ 『Effective Modern C++』勉強会まとめ - Cybozu Inside Out | サイボウズエンジニアのブログ

物理ベースレンダリング (PBR; Physically-Based Rendering) 理論に入門するためのリンク集

ちょうど今日話題になったのでざっくりまとめてみる。

自責と他責のこと。

自責思考が強すぎる人って、TAには向いてないと思うんですね。「あの人のここが悪い」って見つけたときに、「どうすればあの人の悪いとこをフォローできるのか?」って考えちゃう人は、たぶん向いてない。「どうすればあの人の悪いとこを修正できるか?」「…

SWIG で配列の受け渡し。

MScriptUtil とかみてるといろいろ思うとこあるよね、というお話。 SWIG で適当に何パターンか書いてみて比較してみる。

VisualStudio で SWIG やるときのテンプレ(仮)。

そのうちプロジェクト整理して github にでもあげるけど、とりあえずのメモ。

SWIGでハマったメモ。

グラフィックス屋さん的にPythonはとてもだいじ。 なんか見つけたら追記してく。