はてなキーワード: 演算とは
「おっぱいが揺らす表現」が好きだとか嫌いとかいっぱいあるけど、ここで、割と3DCGとかのモデリングしたり物理エンジンを触っている人間だから、そもそもなんでおっぱいが揺れるのが簡単か?という話から書いておきますね。
(私自身は、ぜんぜん末端の人間なので、まだまだ不勉強なところはあるけど、ちょっと雑に書いてみます)
1. 基本的におっぱいの方が服の「しわ」みたいなものがない分、単純な形状をしていて、安定しているから。
2.おっぱい(というか人体)は大きく同じように動いているので、空気、風の影響を受けにくく等、衣服に比べて複雑な動きをしないから
3. 人のモデル一つに衣服は基本的に多数であり、衣服のモデル毎にアニメーションや「骨格」を用意するのは、コストがかかるから。
ということかなと個人的には思っています。詳しく書いていくと。
1について書いてみると たとえば、衣服というのは、基本的にしわがあったりして、それらを考慮してモデリングするのは大変です。さらに、Vtuberの衣装などは余計にひらひらしている部分が多く、そのモデリングを考えると余計に複雑化するでしょう。
また「安定している」と書いたのは、基本的におっぱいというのは変化が少なく、基本的に形が変わりにくいものです。一方服「しわ」というのは形が変わり易いものです。衣服はちょっと動いただけで、「しわ」の形状等が変わり、元にもどるなんてことはなく、時間が変われば全く異なる形状のしわになるものです。その複雑な形状をアニメーションしていくということを考えると非常に難しいのは想像に難くないと思います。
2. に関していえば、1.の複雑な形状とも関連していますが、基本的におっぱいの「揺れ」というのは非常に簡単に作れます。なぜなら、おっぱい全体が大きく同じように動くからです。おっぱいの一つ一つの頂点に注目してみると、おっぱい全体が例えば、上に動いたら、おっぱいの頂点一つ一つの点も似たような動きをしているはずです。また、おっぱいの揺れ自体も例えば、上下や左右などの単純な動きで「揺れ」を表現することができ、「奥行き」等はあまり考慮しなくてよいのです。一方衣服はどうでしょうか?衣服を揺らす場合、空気の抵抗服の抵抗があり、服が揺れるとなると、一つ一つの頂点が複雑に動く、一方の服の頂点では上に動いてるけど、他の頂点は左下に動いてたりと、なかなか厄介です。また、服というのは風や空気の抵抗を受けやすいので、よりリアルな動きを追求しようとしたら、動きによっておこる空気抵抗等も考えなければ再現しにくいものでしょう。だから物理演算で「揺らす」というのは、服の場合計算量が多く、Vtuber等になるとリアルタイムに服が揺れるということをやるには難しいでしょう。(簡易的に揺らすのもありますが...)
3. については、人体はそもそも1キャラクターにつき一つ用意すればいいので、そもそも動かす「骨格」を一つ用意して、それをモーションキャプチャーして動いています。その骨格の動きで物理エンジンもそれに合わせて、モデルが動けばいいので、人体はわりと動かしやすいのです。一方、服というのはそのような骨格がないので、たとえば、基本的には、人体の肌に「張り付いて」同じような動きをすることが多いものです。で、服の「揺れ」、人体の動きとは別に、服のアニメーション(シミュレーション)を考えるとなると、動き自体が複雑だけでなく、その衣装はモデル毎に複数あるもので、それらを用意するのも大変です。
という感じで書いてみました。(末端の人間なのでより詳しい人が訂正するなり、加筆するなりをお願いしたいです。)
とある女の子が自力で一からBlender勉強して理想の自分を3Dモデルで作成してボーンや物理演算設定してコツコツ活動して営業して遂に警察署とコラボしたのに批判するなんてひどーい!みたいな認知なのかな。頭は大丈夫かな。厳しいな
まず「戸定梨香」さんは実在しないよ。企業が運営している架空のキャラクターだよ。知ってたかな?
「戸定梨香」の3Dモデルは運営が業者に発注して作ったか内製したかはわからないけれど、とにかく企業の営利活動のため要件定義書やデザイン案に基づいてモデラーが作成したものであって、別に演者の自己実現のために作られたわけじゃないよ。なんなら演者さんも仕事で中の人をやってるだけで、自己実現とか言われてもよくわからないと思うよ。企業VTuberなんて基本的に企業側の都合でキャラクターとモデルを用意して、後からニコ動とかでかつて人気だったけど今は廃れちゃいましたみたいな配信者を適当に雇って中の人として設定しているだけだよ
今回の件は単に、予算が足りずボーン不足で謎に手足がカクカク動く割になぜか胸にだけは変に物理演算が設定してあって結果手を不自然にバタバタさせながら胸だけがフニャンフニャン動く、何故かAVに出てくるような丈が短くて臍が出てる改造セーラー服を着た3Dモデルで警察署とコラボしたら批判意見が来ました、ちゃんちゃん、というだけの話でしょう
Cadence、Synopsisという謎の半導体設計ソフト企業がある。
ほぼこの2社で独占しているといってよく、ライセンス料もバカ高い。
Web業界的には、そうはいってもオープンソースがあるだろうと言われそうだが、残念ながらない。
設計ソフトが対応している範囲内で出来ることしかチップが作れない。
もしくはこの2社に多額のお金を払って対応してもらう。当たり前だが対応してもらったら他社も使えるようになる。
自社ソフトを作ってアップデートし続けるには売上が足りない、他社から買ってくればいいを繰り返してると、新しいことができなくなった。
あとは日本的な他社へのノウハウ流出を極度に嫌うあまり、エコシステムが作れないといったところか。
例えばキャッシュレスだが、お店側からすると売上が増えるわけでもないのにレジに投資しないといけないし、数%マージンを持っていかれる。
消費税を数%上げるだけで経済シュリンク効果があると言っている人でも、キャッシュレス推進派がいてどう考えているのかわかりにくい。
全体のパイが増えていっている中で、消費者目線で利便性が上がるのは大歓迎だが、そうなっているだろうか。
アメリカ大手テック業界がコングロマリットを推し進め、定義を曖昧にして市場規模が大きくなっているように見せるが、日本じゃ通用していない。
中間業者をなくそうという動きはずっとあったが、テック企業が単に中間に入ってマージンを取るようなビジネスモデルしか持続できない。
これからはソフトとサービスの時代だとずっと言われてきたが、投資した物が後に残らなかったり、米テック企業に振り回される。
ソフトはずっと更新し続けるものかもしれないが、ずっと外因や一部企業に振り回される。
1国内でとどまらずグローバルで展開出来ること以外に強みはないのではないか。
船や飛行機より通信は早く、税関でのチェックや複雑な仕組みに対応しなくていいのが強みではないのか。
日本で、これからはソフトとサービスの時代だと言っている間に、1周回ってハードの時代になってないだろうか。
Googleやフェイスブックやマイクロソフトは大量のサーバーを持っている。
Googleなんてエッジが大事だと言いつつ、客が端末代と通信費代を払ったAndroidで、皆が寝静まり充電している端末を使って演算するだろう。
Appleは似たような体系の企業は他にあるが、あそこが強いのは他社に自社有利な契約を飲ませているからで、有り余る金がないと真似できない。
テスラもソフトウェア的な設計を機械設計に持ってきたところばかり注目されるが、ハードに投資しており、AIが必要だという話になれば自社半導体を作るところから手を付けている。
賃金が高ければ消費者になれ、国内に消費者が多ければ機械化で生産したものが消費される。
東京近辺のような賃金は高くなったが居住空間が狭く、消費は限定的で投資に向かい、巡り巡って不動産に金が流れ、賃金上昇よりも家賃上昇速度が早く、
格差が広がっていくのは辛くないだろうか。
これ自体がプログラミング言語の機能だと思ってるんじゃないかと
だからXORについても、なにかプログラミング言語の力で「左辺だけで演算結果を得られる方法があるのでは」という発想が出るんじゃないかと
左辺だけで結果がわかるというのは数学的な性質であって、言語は、数学的な性質に基づいて無駄な計算(右辺の評価)はしない、という動作をしているに過ぎない
プログラミングの基本的手法の1つに、論理演算というものがある。
これは真偽値(真=true、偽=false)同士の組み合わせを評価し、結果をtrue/falseで返すというものだ。
この演算のための演算子の代表的なものがANDとORで、それぞれ論理積と論理和という。
式aとbにtrue/falseのいずれかが定義されているとして、
a AND bだったらaとb両方がtrueのときのみ、演算結果がtrueになり、
a OR bだったらaとbいずれかがtrueであれば、演算結果がtrueになる。
ということは、
ANDの場合は左辺の式がfalseの時点で、右辺を評価するまでもなく演算結果はfalseとなり、
ORの場合は左辺の式がtrueの時点で、右辺を評価するまでもなく演算結果はtrueとなる。
これを短絡評価といい、今どきのプログラミング言語では必ずこの仕掛けが実装されていると。
これは排他的論理和といい、演算子の右辺と左辺の結果が違う組み合わせの場合のみtrueとなる。
つまりa=trueかつb=falseの場合か、a=falseかつb=trueの場合のみ、演算結果(a XOR b)がtrueとなる。
問題は、どういうわけかこのXORには短絡評価が存在しないのだ。
どのプログラミング言語を調べても短絡評価がないので、かなり驚いている。
一体どういうこと?
(追記)
前回から何か新しい物が生まれているのかがわからず、正直困惑している。
前回の失敗は、「不動産」と「なにか新しいものがある場を提供出来なかった」のが原因だったと思っている。
「不動産」は、3Dの街データで人が集まりやすい所に対して、広告費をつぎ込むなどだ。
「なにか新しいものがある場を提供出来なかった」は、一度作った町並みがずっと変わらないので、新しいものがないので飽きる。
そしてリアル空間よりも人が集まらないとお金にならない。それこそ国境を超えないといけない。
人が集まるには、そこにいけば新しいなにかがなければならず、量産しやすいニュースだったり、そこそこのクオリティで暇つぶしできる動画やゲームが必要になった。
1度作った街並みは大半の人が飽きても残ってしまう。
消費するよりも多くの物が提供されるならいいが、以前のメタバースだとそうはならなかった。
街並みもビルの外見はあるが、中のお店が充実しているというのもない。
お店の中で並ぶ商品の数は少なく、現実の100円ショップのような商品数もない。
コンピュータの演算能力は増えたが思っているよりも増えてないのではないだろうか。
アバターにしてもローポリでテクスチャで陰影を頑張る方向のままだ。
この文章では特に何かを問題視して、解決しようとはしていません。別にそれで良くて、俺も世界に何かを望んではいない
でも少しくらい寂しさがある
都内一人暮らしの男性向けに気軽に入れる店。とやらの広告があるけどそこには気軽に食べたりサクッと飲むのに丁度いいとか書いてる
私は西友の弁当を食べて水道水飲んでる。アルコールアレルギーで酒は飲めない
なぜこの私がその店に興味あると思ったのか。広告をレコメンドしているAIが雑といえば、まあ納得できると思うけど、けしてそれだけではないんだよ
そもそも私にフィットする既存の経済活動が極端に少ない。世界一周旅行もポルシェも興味ない。旅行はしないし、運転免許は持っていない
自転車保険?自転車もってないよ、GoogleのGPS機能有効にしてるんだからそこから情報とってくりゃ、俺が日がな近所の公園を何キロも徒歩で散歩しているのはわかるだろうが、そういう情報と連動していないんですかね
GPSと広告連動していないのは、Googleの良心として受け取っておきます
つまり、自転車も乗らないし一日に1時間も瞑想したり散歩したり、酒が飲めない男向けの経済活動がこの世に存在しないんだろう
俺が最近お金使ったのはぶっ壊れたソニーの3万円位するイヤホンとMacBookProの買い替えだけだしな
そういう商品ってわざわざスポットの広告いれて売れるようなものじゃないから、広告に表示されないのはわかるし、一度買っただけで同じ商品を何度も広告に出されたらそれこそ発狂するので、これらの商品が広告に出ないのは当然なんだけど
興味のある広告が一つも無いの、世間から見放されている感があるなぁ。どちらかと言うと自分が世間を見放してしまったので、大抵のことに興味が起きなくなっているだけなのかもしれない
冒頭で寂しさと書いたけど思い返すと少し違うかもしれない、こういうのをわびしいって言うのかもしれない
なのでメダルゲームのスマホアプリインストールして脳死状態で延々とルーレットまわしている
外周の抽選では1/3、中央の皿には最終抽選に進むための穴が中央にあって、体感的に1/5くらいの確率で入る感じ
ラッシュチャンスでは5/6のあたりを引き続ける限りWIN倍率が積み上がっていく。
計算するとラッシュチャンス到達までの確率は、 1/3 * 1/5 * 1/8 なので 0.8%くらい
実際は中央の更にボールをHOLDしておいて、1/8 抽選でボールを3つ使える場合があるので、体感的にはラッシュ突入までの確率は1%以上は確実にあると思う
そんで、ラッシュ突入では (5/6) ^ N でN連チャンで連チャン数が上がるたびに確率が低くなっていく、多くの場合は5連チャン(40%)くらいまでなら行けるけど、まあ体感的に5連チャン引けないこともよくある
10連チャンは (5/6) ^ 10 で16%くらいなんだけど、脳死状態で抽選機を回し続けてるせいで16%とかめちゃくちゃ確率高いじゃん。っていう思考になってきている
でも実際の抽選は物理演算のルーレットを使ってるし、過去のボールが穴を塞いで確率がかわったりするので数字のとおりではないよなとか、
しかも穴を塞いでるからって別に確率が上がるとも限らないよなーとか。あたり穴の前後の穴が塞がれた場合は、はじかれたボールがアタリに入る確率上がるけど、ハズレ穴に囲まれたハズレ穴が塞がれただけだとそのハズレ穴にボールがきたとしても左右のハズレにボールが流れるだけなので実質的にはハズレが減ったとはみなせないよなあとか
そういうことして生きてる
ただのスマホゲームですらこんな感じなので、現金賭けるカジノやったら完全に脳が焼かれるでしょう
そういう広告が出てなくてよかった
それが必要なんだよ。たとえば f(x) という関数があって、f(2) = 4 に束縛されたらメモリ上では定数にできて嬉しいのだよ。最近だと、イミュータブルっていうやつで。既存の Ruby や C だと、f(2) が確実に 4 と返すことができなくて、困っているのだ。
そうだね。でも計算機にかける前に、オーダーを出しておく必要なんだよ。計算機は演算にコストがかかるから、前もって結果を推定しないといけないの。だから、元の関数の中身を吟味したいの。
∞と∞を不等号で比較することはできないんだ。
それは事実。∞/∞ は定義されてないよ。知ってるよ。でもさ、数式的にわかっているときに発散具合で、関数自体は比較できるのじゃないの?
④の式を計算機で処理することはできないというあなたの説に反論する為に、WolframAlphaに④の式を計算させるリンクを張ったのだけれども、意図を全く理解してないようだな。
そりゃ、そうだろ。WolframAlpha が数式を表記できなかった誰も使わねえ。アホか。俺は電卓までは否定しないよ。違うってば。オレっちは「制限のあるメモリ(=有限)上では ∞ は定数としか扱えない」から、「数学=計算機科学」ではない、と言いたいの。「反例の反例」で書いたけど、遅延評価のような手法を使うと数学の問題もプログラミングで解けるよ。なんなら、虚数や分数でも Haskell や Ruby を使うとプログラミング上は解けるよ。それは言語製作者がパフォーマンスを落として実現しているだけで、メモリやプロセッサでは直接演算してないのよ。まさかだけど「物理学で小数と分数を同じものとして扱ってはいけない」ことを知らないとかじゃないよね?
ここまではよくわかる。それで物理学と数学的なカオス理論を押す連中が間違っていると思うのが、
二度目の入力の際に手間を惜しみ、初期値の僅かな違いは最終的な計算結果に与える影響もまた小さいだろうと考えて、小数のある桁以降の入力を省いたところ、
ここ。ここが諸悪の根源だ。まず計算機科学の連中が大学に入って最初に引っかかるミスに大御所がひっかっている。たとえば、0.4 - 0.3 は計算機科学では 0.1 じゃない。それは十進法から二進法に変換するという計算機の特性を理解してない人がやるミスだ。嘘だと思ったら、0.4 - 0.3 == 0.1 と C なり Ruby なり Python なり Java なり Haskell なりでやってくれ。ちなみに JavaScript なら 0.4 - 0.3 === 0.1、Lisp族の Clojure は (== (- 0.4 0.3) 0.1)、PHP はちょっと自信がないので省かせてもらう...。浮動演算ユニットがついているプロセッサで IEEE 754 の類をサポートしているなら「偽」となるはずだ。ここでは「桁あふれ」「丸め誤差」なんかは説明しないが、計算機で小数を扱うのは注意が必要ってことだ。閑話休題、つまり計算機で数学や物理学が実数のように小数点を扱うなら 3.0 と 3.1と 3.14 は別物として扱う必要があって、カオス理論の創始者であるローレンツは「有史に残る」ミスを犯した。
結果が大きく異なった。
これは金融界隈のエンジニアたちにとっては、コンピュータが現れてからは悪夢のような形で襲っていて、ゴースト・イン・ザ・シェルの題材にすらなっている「既知の未知」という類のエラーだ。はっきりいうと、大御所にこんなことを言うことは憚れるが、エンジニアだと3年目以降だとしないミスを MIT のエリートがやっているという、なんというか「そりゃ、そうなるだろ」的なミスをしでかした結果なんだよ。例えば、古典物理学だと有効数字のひとつ下の数値は切り上げて四捨五入するというのは教科書的には正しい。だがね、計算機科学だと小数点の扱いは事故の元なんだよ。具体例を出すと「Ruby で円周率を100回掛け合わせる、Ππ(パイパイ、n=100)みたいなことをする。
puts [3.0, 3.1, 3.14].map{|i| 100.times.reduce(i) {|j, k| j *= k + 1}} # 2.7997864633183236e+158 # 2.893112678762268e+158 # 2.930443164939848e+158
もう一度、特に高校の物理をやった人は考えてほしい。数値を切り捨てしないだけで、これだけの差が生じるのだ。そりゃ、ローレンツ大先生も驚くわな。現実世界では起きないような気がするのはなぜか?、と思うじゃん。そこで、わたしはこう思うわけですよ、
とね。だからこそ、
というものを科学する学問があって良いのじゃないかと。つまり、
なのではないかと。
たとえば、RSAの暗号理論は計算機の有限時間内の演算が難しいという特性を使っているわけじゃん。つまり「暗号化されたものは確実に復号できるという特性を持ち、かつ有限時間以内に割り切れる可能性がほぼ無い」という特性を持つことは数学的にも正しく、計算機科学でも成り立つ事実じゃん。SHA-1 がハッシュ暗号として脆弱なのは、異なるファイルで同じハッシュ値を作れることが PoC されたことであって、数学的に脆弱性が解読されたわけじゃないだろ?もし、数学的にこの脆弱性がわかっていたら、もっと早い段階でハッシュの衝突が起きていたと思うのだが、違うのかい?一応は SHA-1 で衝突が起こることは数学的に予期されていたが、これだけハッシュ破りに時間がかかったのだから、有用性はあったとはおもうけどね。