Spine runtime - 03.Draw & Clipping

UnityやUnrealEngineのコンポーネント使わない、生のSpineランタイムの取り扱い記事です。 ようやく、表示について触れたいと思います。Unityコンポーネントなどでは勝手にやってくれるため、何も考える必要がありませんが、自前の環境で動かしたいのであれ…

Spine runtime - 02.Animation

UnityやUnrealEngineのコンポーネント使わない、生のSpineランタイムの取り扱います第二回。コンポーネントを使えばらくちんですが、隠されている便利な機能もあります。役に立たないようで役に立つかもしれませんよ。 Spine runtime アニメーション編 次に…

Spine runtime - 01.Setup

Spine runtime Spine についてです。エディタでは無く、プログラムに組み込むための ランタイム について書こうと思います。Unityプラグインではなく、もっと下層の部分です。 数年前にも記事にしましたが、Spineのバージョンも進みました。大きく変わってい…

Spine Animationrig

Spine Animationrig SpineAnimationrig01 SpineAnimationrig official homepage ko-ta2142.github.io こんなのつくりました。Spine を制御するツールです。Spineエディタより上の層、ランタイムを制御するためのツールとライブラリです。アニメーションを作…

multi-core threading

昔にも書いたマルチコアスレッドコードです。マルチコアによる分散処理を行います。 長らく修正を反映出来ていなかったのでgithubに上げてまとめました。 github github multi-core and muti-threading https://github.com/Ko-Ta2142/MultiCore 簡単なマルチ…

UndoRedoのメモリの最適化

今までundo機能をなぁなぁで組んでいたら(全シリアライズデータをそのまま保持)メモリ使用量がヤバいことになったのでまじめに組み直してました。 というわけでundoとそれに使用するメモリ量の最適化のお話です。 エディタでも作らない限りundoredoのお世…

spine morph-target

本家より良い返事が貰えたので、経緯を残しておきます。そのうち使えるようになるそうです。ありがたし! ver3.6のspineを弄っているとメッシュデフォームがあるものの、口パクや表情でよく使うモーフターゲット(morph-target)がないので、固定的なものは力…

spine c++ serialize

たぶん必要になるでしょうアニメーションのシリアライズ、保存、復元です。ただし、ゆるーいシリアライズです(後記)。 spineにはアニメーションを保存する機能が、ありそうでありません。作らないといけません。付けて欲しいなぁ…。 spineのアニメーション…

Netjs

Netjsもduocodeと同じくC#からTypeScript(JS)へ変換するプロジェクトです。ちょっと試してみましょう。 インストール Netjs https://github.com/praeclarum/Netjs これはduocodeほど環境を必要とされません。githubからcloneして、コンパイルしてexeとして使…

duocode - C# to JS

今までキワモノだぁ!と思っていたdocodeをちょっと試してみたので、忘れないように書き残しておきます。 主にマルチプラットフォームに耐えうるか調べてみます。 duocode http://duoco.de/ doccode それはC#をJavaScriptに変換してくれる素敵なツール。VSコ…

ChakaraCore + TypeScript

ChakraCoreに手を出したのは5割ぐらいはTypeScriptしてみたかったからです。 アプリ組み込みでどんな感じに楽できるのかやってみましょう。 TypeScriptインストール TypeScriptは簡単に言ってしまえば動的言語を静的言語にして、ヒューマンエラーをコンパイ…

ChakraCore implement 2

長くなるので分けました。 使用する関数は1つ前の記事を参照と言うことで。 github ソースコード。 https://github.com/Ko-Ta2142/ChakraCore_DelphiSample01 エラーハンドリング 開発で一番大切なところ、エラー表示です。 組み込む以上、nodeJs開発環境み…

ChakraCore implement

こっそり出したことで有名なMiscrosoft社製JavaScriptエンジンがChakraCoreです。格好よすぎる…。 DLLが出力できるので、C#じゃないDelphiで読み込めるか試してみたので一通り残しておきます。他言語でもヘッダがあれば大体同じなはずです。 メモリ上読み込…

spine c++ Implement

spineのC++組み込みをちょっとやってみました。 オフシャルgithubでテストコードやライブラリは落とせますが、オフィシャルドキュメントにある最小限の構成が欲しかったので、VisualStdio2015で構築したいと思います。 生成と解放 メモリ上読み込み モーショ…

Metasequoia station plugin "ObjectComposition ver2"

準備に手間取りました。 以前のものの上位版になります。 オブジェクトを立方体に変形投影するMetasequoiaプラグインです。 同じ形状のものを何個もクローンさせる場合に効果を発揮します。 投影なので配置後も元オブジェクトを修正するとすべてに反映されま…

ローカルなんとか

c++で関数内関数を使いたいんじゃ! int hoge::hoge(){ struct Inner{ int addadd(int a){ return a+a; } } return Inner::addadd(4); } こんなことって普通は無くて、クラスメソッドが使いたいんじゃ! int hoge::hoge(){ struct Inner{ int addadd(const h…

もうちょっと

もうちょっと。 vcを触ってあげよう計画。元はBorlandC++Builder vclでしたがstdにおきかえ。 stdに比べてなんだかんだでほぼすべて揃っていたvclはPythonだったんじゃ。 丸写しではなんなので入れ子構造に対応させたいところだけど…。画像は失敗例。

4x4matrixのちょっとした最適化

matrix計算も思い出すのに30分かかりました。もう6〜8年前のコードだしそりゃ忘れるって話ですよ…。 行列の結合 mulとかcompositeとか色々言われる、行列同士のかけ算です。 function matrix4composite(m1,m2) local t = { m1[1+0]*m2[1+0] + m1[2+0]*m2…

ところでconsolas

win10になってからconsolasフォントは綺麗ですよね。VScodeでフォントとしての格を上げました。 そんなconsolasなんですが、多のエディタやHTMLで指定すると日本語フォントがイマイチ…VScodeのように綺麗に表示してくれません。(ものによってはおまえはプロ…

luaの内部最適化について

これメモリ確保してる?無駄に新しいの生成してない?など、luaの内部挙動についてマニュアルを見ても不明だった点を2,3書き残しておきたいと思います。 内部処理は今風でとても賢いです:Q 文字列の受け渡し luaの引数の説明では「参照渡しされるのはテー…

luaのメモリローダー

lua5.1も気がつけば5.3です。luaに関してはまだ若かりし5.1の頃の記事が残ってますが、良い加減ちゃんと書き直したいので1,2,3を飛ばしてloader周りから書き直したいと思います。 オンメモリ読み込み 組み込みで避けて通れないのがオンメモリ読み込みと…

luarocks(lua5.2 DLL) on VS2015(windows)

前に失敗したのでリベンジ。 VC(VS2013)にluasocketの.makeみながら全ソースぶっ込んで作ったことはあったのですが、monnscript使おうと思ったらモジュールの依存関係があってこれは辛いなぁ…ってことでluarocksさん。 luarocksと言われても… lua用モジュー…

V8エンジン

JavaScript組み込みエンジン「V8」にちょっとだけ手を出してみました。 なぜ?lua言語にちょっとイライラしたから…つい魔が。 Chormiumeプロジェクトのアレです。ブラウザからJavaScriptエンジン部分だけをぶち抜いたもので、みんなもプログラムに組み込んで…

VS2015とVS2013共存時のC++エラー対策

書き直します。はっきり言うとどうにもインストールエラーっぽいです。 それでも以下の症状が出た場合の対処策として記しておきます。 直りました あるときVSを起動すると特殊な処理(インストールのような)が走って設定が色々直りました。これは一体どうい…

過去色々なライブラリについて

もうずっと放置気味なライブラリにつきまして。 一応残しておこうとおもいます。no support , no maintenanceで。 多くはDelphiで作られていますが、pureでもなく、ユニコード対応でもなく、私自身もバージョンを追えていない非常に厳しい状態です。(もうち…

ノートPCのタッチパッドにおけるホイール処理

ノートPCについているキーボード下のタッチパッドにおけるマウスホイール処理についてメモしておきたいと思います。 実は難物なんですこれ・・・。 イベント内容 パッドを使ったホイールスクロールの場合は、マウスによるホイールスクロールとは異なり、特…

おまけ

タッチデバイス時の他のジェスチャについてのログです。 ズームなどはこのイベント情報から自前で処理する必要があります。 windowsはID番号があって、これがとても役に立って優秀なのですが、それでもジェスチャー開始と終了処理は相当気を配って処理する必…

ジェスチャーデバイス

タッチ操作をOSが処理して、専用のイベントを発生させます。 このモードの特徴は、クリックとプレスアンドホールド以外は、マウスイベントが全く発生しません。 パンであってもマウスムーブ(MouseMove)が発生しません。 これはスクロールバーの操作などを行…

タッチデバイス

生データに直接アクセス、がこのモードになります。 生データだけあって、触れている指の数(ID)、座標、ぐらいしか取得出来ません。 反応は最も早く、ログを見て貰うとわかるとおり、マウスのマウスダウンよりも10ms以上早くタッチイベントが飛んでくるので…

レガシーデバイス

旧来のそのままの状態をレガシーとwindowsは定義しています。 この状態ではwindowsはタッチ操作をマウス操作(イベント)に置き換え、マウスの代行としてアプリを制御出来るようにしています。 ・Windows Touch Gestures Overview http://www.domoneo.com/wi…