早めに帰着。
あまりの眠さに急速停止。
AM中に起床。
掃除したり洗濯したり。
ちょろっと作業。そういや、今日SAI2を立ち上げたらライセンスが不整合だと
いうメッセージが出たり。システムIDが変わってるようだったのですが、
そんな事あるんだっけ?そんな訳でユーザーライセンス証明書をダウンロードし直したり。
図案を考えたり。
起きたら午後もいい時間。寝すぎ。
もそもそと作業したり。
早めに帰着。
Web巡回して終了。
早くも無く遅くも無く。
あまりの眠さに急速停止。
気持ち早めに帰着。
あまりの眠さに急速停止。
早めに帰着。
ちょろり調べ事。
AM中に起床。
以前、サイトを引っ越す必要が
ありそうと書いたのですが、具体的な案内が通知されてきたり。
移行サービス付きとなっているようですが、移行できるファイルの文字コードが
指定されてたり、一時的な置き場に置くから後は都合の良い位置に動かしてくれ
とか、一体何を以って移行と言っているのかよく判らんなぁ?という感じ
だったり。あと、旧サイトと新サイトのオーバーラップ期間が無いようで、
旧サイトに引っ越し案内を出す事ができないんじゃないか?という気も。
バナー画像を弄ったり。これまでバナーはPOV-Rayでレンダリングしていて、
文字オブジェクトはheight_fieldを使用して生成していたのですが、大画像で
レンダリングすると側面がガビガビなのが気になったので、
Inkscape→(PostScript)→Wings3D→(POV形式)
という経路でポリゴン化してみたり。問題はベースとなるPOV座標が
あまりにも見た目で調節しすぎてて、Wingsの文字モデルとPOVネイティブの
オブジェクトの位置関係をどうやって合わせたものか困ったり。
結論としては、Wings3Dの方でカメラ位置と注目点を値指定する事が
できるのを見つけた(View→Numeric Camera Position)ので、これで
カメラ位置をPOV-Rayカメラと合わせてた状態でオブジェクトを位置合わせ
する事で、元のPOVファイルに含まれるCSGのオブジェクトとWingsでExportした
ポリゴンオブジェクトとをうまくマージする事ができました。
いや、バナーサイズにすると潰れてしまうので全くどうでも
良い感じなのですが(^^;
AM中に起床。
そういや追加したフォントがInkscapeで認識されないなぁ?
と思い調べてみたら、Windows10の1809から フォントのインストール先が
変わってたらしい。対応策の一つはフォントインストール時に
「すべてのユーザーに対してインストール」とすれば、これまで通り
「C:\Windows\Fonts\」にインストールされるようですが、まぁまぁな数の
フォントを入れてる場合、もう一回作業するとかあり得ないので、
こちら
のTipsを参考にフォント検索パスを追加する方法を使ってみる事に。
参考にしたTipsは、元々インストールしていないフォントファイルを
Inkscapeで認識させる方法のようですが、期せずしてWin10のフォント
インストール先変更への応用ができるという感じのようです。
インストールされたフォントのパスは
「C:\Users\[ユーザー名]\AppData\Local\Microsoft\Windows\Fonts\」
になっているようなのでこのパスを追加。結果、Inkscapeで
追加したフォントを認識するようになりました。てか、御新規様は
「フォント認識されてなくね?」と思った瞬間に使えないツール認証
してしまう恐れがありますので、早急に対応した方が良いんじゃないか
とは思わなくもありません。
AM中に起床。
ちょろりお出かけ。涼しい~。
激レアさんを連れてきた。のレギュラー回、ジャイアン声優の人。
声優交代って もう14年も前の話になるのか。中学生がノリで応募して受かってしまう
とか恐すぎる。TANEが新声優陣のドラえもんを観たのは初回放送から
大分経った頃でしたが、
この時には違和感は感じてなかったかも。最終オーディションで
5人揃った状態で違和感があったらオーディションをやり直す予定だった
というのを今日初めて知ったのですが、その条件を通過した事を考えると
当然の結果だったのかも。
先日のD2形式の演算子オーバーロードの件、ダメだった原因判明。
こちらのドキュメント
を参考に書いたのですが、opAssign()ではなくてopOpAssign()が正解。
そして、アサイン演算子の場合は戻りは無くてvoidにしなくてはなりませんでした。
最初、2.088.0の変更点リストに含まれる
対応ルール
の通りopOpAssign()と書いてエラーしていたのですが、戻り値無し(void)に
しなくてはならないというのに気づいていませんでした。
続いてドキュメントの方ではopAssign()と記されていたので、書き換えたら
エラーしなくなった訳ですが、恐らくopAssign()だとそういう名前の
メソッドが定義されただけでオーバーロードとは解釈されないのでしょう。
この為、「vec3D構造体用のSubAssign('-=')は定義されていない為、スカラ型
にしか使えませんよ?」というのがエラーメッセージの意図だったのだろう
と思われます。という訳で、正解は以下の通り。
struct vec3D { : void opOpAssign(string op)(vec3D d){ static if( op=="-" ){ this.x -= d.x ; this.y -= d.y ; this.z -= d.z ; } } void opOpAssign(string op)(double d){ static if( op=="-" ){ this.x -= d ; this.y -= d ; this.z -= d ; } } }
vec3D opAssign(string op)(vec3D d){ static if( op=="-" ){ this.x -= d.x ; this.y -= d.y ; this.z -= d.z ; } }
気持ち早めに帰着。
そういやCPUが32bitアーキテクチャの場合、EmacsLISPでは扱える整数の範囲は
30bit長だったりするのですが、なんだかそれよりも大きな数を浮動小数点数を
介して扱えている気がしたり。
(+ #xffffffff 1) ;Ctrl+j 4294967296.0 (format "%x" (+ #xffffffff 1)) ;Ctrl+j "100000000"
(logior #xffff0000 #x0000ffff) ;Ctrl+j ↓エラー Debugger entered--Lisp error: (wrong-type-argument integer-or-marker-p 4294901760.0) logior(4294901760.0 65535) eval((logior 4294901760.0 65535) nil)
(logior #xffff0000 #x0000ffff) ;Ctrl+j 4294967295 (format "%x" (logior #xffff0000 #x0000ffff)) ;Ctrl+j "ffffffff"
struct vec3D { : void opSubAssign(vec3D d){ this.x -= d.x ; this.y -= d.y ; this.z -= d.z ; } void opSubAssign(double d){ this.x -= d ; this.y -= d ; this.z -= d ; } }
struct vec3D { : vec3D opAssign(string op)(vec3D d){ static if( op=="-" ){ this.x -= d.x ; this.y -= d.y ; this.z -= d.z ; } } vec3D opAssign(string op)(double d){ static if( op=="-" ){ this.x -= d ; this.y -= d ; this.z -= d ; } } }
bool LPcross( vec3D eyepos, vec3D ray, vec3D fp0, vec3D fn) { : fp0-=eyepos ; : } エラーメッセージ Vec3D.d(284): Error: `fp0` is not a scalar, it is a `vec3D`
早めに帰着。
あまりの眠さに急速停止。
遅めに帰着。
肩が痛くて死亡。
早めに帰着。
あまりの眠さに急速停止。
AM中に起床。
掃除したり。
全然関係無い流れで「こんべぇの あいむそ~り~」なる
ゲームの存在を知ったり(YouTube動画)。
コアランドテクノロジー株式会社(後のバンプレスト)の開発で
セガからリリースされたアーケードゲームらしいのですが、
初めて知りました(参考Wikipedia)。
AM中に起床。
何気に過去に自作したOpenGL描画を使用するアプリを実行してみた
ところ、60fpsになるように調節していたにも関わらず何故か30fps
になっていたり。垂直同期の周期に関係無く、1フレームの描画に
かかる時間を計測して、「1/60秒 - 描画にかかった時間」を
Sleep()で待つ事で大体 60fpsになるというつもりで、それで動いて
いたコードだったのですが。
NVIDAのコントロールパネルを使って「垂直同期」を「3Dアプリケーション設定を使用する」
から「オフ」にしても状況変わらず。どうもSleep()関数が
指定の2倍の時間を待っているようにも思えたり?また、
「垂直同期」を「オフ」のままSleep()による自前待ち合わせを
行わないと、2600fpsくらいになる事から一応自前待ち合わせが効いている
のか?と思ったのですが、
「垂直同期」を「3Dアプリケーション設定を使用する」に戻して
且つSleep()による自前待ち合わせを行わなくても60fpsに固定
されたのが「んんん???」と思う所だったり。
垂直同期 | Sleep待ち | fps -----------+------------+-------------------------------------- アプリ設定 | 有り(16ms) | 30fps オフ | 有り(16ms) | 30fps ★なんで?↓ オフ | 有り(8ms) | 60fps ★Sleep()が2倍の時間待ってる? アプリ設定 | 無し | 60fps ★なんで? オフ | 無し | 1900fps~2600fps
昼過ぎ起床。寝すぎ。
Function2019で 256Byteイントロを作成するセミナーが行われてたのを
ちょろっと見られたり。英語なのでほぼ判りませんでしたが、
命令列を1バイト削る為のテクニックだとかが示されてたりして、
256Byteだとこういう感じで削っていかないと無理なのかと思ったりも。
現在のCPUの命令セットアーキテクチャはほとんどがRISCベースの為、
命令語長は固定のものがほとんどです(ARMのThumb命令セットとかはありますけど)。
256Byteイントロを作って楽しめるのは今や可変長命令アーキテクチャの
x86しかないかもなぁ?とは思ったりも。
そういやTGS2019やってるんだよなぁ?と思ってWebを眺めていて知った
「ラクガキキングダム」。
ほぅ....
Function2019。GameDevとGraphicsを観られたり。日本語表示のゲームがエントリ
されていたのですが、日本人の参加なのかしら?
気持ち早めに帰着。
千葉県の大規模停電。復旧できてないエリアが広すぎない?
そういやメガデモイベントであるところの
Function 2019が
始まります。ちょっと遅くまで起きてる所で思い出したのですが、
丁度オープニングセレモニーが始まる所だったり。CESTなのでJSTとの
時差は-7時間です。デモコンポ時間はJSTではまぁまぁな早朝になりそうです。
早くも無く遅くも無く。
ちょろりコーディング。D言語で opCmp()をオーバーライドするのに、
override int opCmp(mpf b){ int n = mpf_cmp(&v, &b.v); return n; }
gmpp.d(101): Error: function `int gmpp.mpf.opCmp(mpf b)` does not override any function, did you mean to override `int object.Object.opCmp(Object o)`?
override int opCmp(Object o){ mpf b=cast(mpf)(o) ; int n = mpf_cmp(&v, &b.v); return n; }
早くも無く遅くも無く。
あまりの眠さに急速停止。
遅めに帰着。
鉄拳7のアップデート(Ver3.00)が来てたり。eスポーツ ブームの
おかげか結構息が長い感じになっているような気も。
遅めに帰着。
台風の影響で、何やら千葉県内で大規模な停電になっているらしい。
正直「そんなに?」とは思ったりも。
AM中に起床。
掃除したり洗濯したり。
GTS。やっとこGTリーグを全てゴールドで埋められたり。長かった。
台風。日中はあまり来ている感が無かったのですが、夜遅くになって
少し来てる感が出てきたりも。深夜がピークという感じか。
台風の位置に関係無く 月曜の朝は電車が止まるようなので、
そこで混乱気味になるくらいか。徒歩通勤可能な範囲なので
通り過ぎてれば関係ありませんが(^^;
AM中に起床。
GTS。まだ取れない。
Emacsの雑記を
26.3ベースに更新してみました。ご参考まで。
そういや以前、
Google翻訳だとなんだか意味が違う訳になる英文があったのですが、
その後ニューラルネット機械翻訳になった所で
意味的には正しくなってました。ただし、「車」が省略されていたのですが、
今ではどうなっているのだろう?と試してみたり。
原文 : I only sold ten cars, not fifteen. 2014年 5月Google翻訳 : 私は10の車ではなく、15を販売した。 2016年11月Google翻訳 : 私は15台ではなく、10台しか販売していませんでした。 2019年09月Google翻訳 : 私は15台ではなく10台しか売っていません。
原文 : I only sold ten cars, not fifteen. 2019年09月みらい翻訳 : 私は15台ではなく10台しか売れなかった。
原文 : Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo. 2019年09月Google翻訳 : バッファローバッファローバッファローバッファローバッファローバッファローバッファローバッファロー。 2019年09月みらい翻訳 : バッファローバッファローバッファローバッファローバッファローバッファローバッファロー。
気持ち早めに帰着。
ちょろりGTS。あと少し。
早めに帰着。
GTS。アップデートが来ててダウンロード&インストールに時間がかかる罠。
早めに帰着。
あまりの眠さに急速停止。
早めに帰着。
RISC-V。
オープンな命令セットアーキテクチャですが、よっぽどの理由が
無ければ既存のソフトウェア資産が利用できない新たなアーキテクチャの
CPUを使おうって事にはならないだろうなぁと思ってました。
ところがARMがHuaweiとの取引を停止する話から、急にRISC-Vに
日が当たってきた感じも。ただの気のせいかも知れませんが。
早くも無く遅くも無く。
あまりの眠さに急速停止。
AM中に起床。
掃除したり洗濯したり。
随分前に
Linksというテキストベース
のWebブラウザがある事を知ったのですが、すっかり忘れてたのを思い出したので
今どうなっているか見てみたり。現在はテキストベースを基本としながらも、
グラフィックウインドウへのレンダリングもできるようになっている
みたいです。Cygwinでビルドしてみると特にエラーする事も無くビルドに
成功。UTF8対応されているとの事だったので、以前はダメそうだった
日本語文字もイケるか?と思ったのですがダメでした。
日本語ページでWeb検索を絞ってみるもほとんど出てこないのと、
元祖とも言えるテキストベースブラウザのLynx とも名前が似ている為か、
Lynxに関連するページの方が強めに出てくる感じです。
「宇宙兄弟(36)」。オリガのネタ回収。
ガガーリンのWikipedia
によると、「地球は青かった」は大分意訳されているようで、
原文は「Небо очень и очень темное , а Земля голубоватая . (空は非常に暗かった。一方、地球は青みがかっていた)」
だったそうな。ただ、実際には一言で述べた訳ではないという話
もあるみたい。本巻での「地球は青いヴェールをまとった花嫁のようだった」
は、そのような言い方もしていたのか、本作のフィクションの部分なのかは
判らず。