ぬの部屋(仮)
nu-no-he-ya
  •      12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
      12345
    6789101112
    13141516171819
    20212223242526
    27282930   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
         12
    3456789
    10111213141516
    17181920212223
    242526272829 
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    30      
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
        123
    45678910
    11121314151617
    18192021222324
    25262728   
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
       1234
    567891011
    12131415161718
    19202122232425
    2627282930  
           
    1234567
    15161718192021
    293031    
           
         12
    3456789
    10111213141516
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    30      
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
      12345
    6789101112
    13141516171819
    20212223242526
    27282930   
           
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
       1234
    567891011
    12131415161718
    19202122232425
    2627282930  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728     
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
     123456
    78910111213
    14151617181920
    21222324252627
    282930    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
           
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
     123456
    78910111213
    14151617181920
    21222324252627
    282930    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31      
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
      12345
    6789101112
    13141516171819
    20212223242526
    27282930   
           
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031     
          1
    2345678
    9101112131415
    16171819202122
    232425262728 
           
       1234
    567891011
    12131415161718
    19202122232425
    262728293031 
           
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
           
         12
    3456789
    10111213141516
    17181920212223
    24252627282930
           
      12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
           
    1234567
    891011121314
    15161718192021
    22232425262728
    2930     
           
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
           
  • Blender 苔応用 Cyclesで地球の模型 テクスチャの合成 複数のUVマップ

     

    前回、岩、というか石に苔をつける作業をやったが、その応用で地球のような物を作る。

    ※これはリアリティを求めたものではない。

    fakeearth_0_20150712

    こんなのができあがる。

     

    [①]. まず球をUV展開しないと行けない。

    こちらを参考に:http://qcganime.web.fc2.com/BLENDER/Misc01.html

     

    1. 点が集中する
    球の頭頂部を削除。
    この点の座標は
    メモしておく

    fakeearth_1_20150712

    2.押し出してから
    Ctrl+EでMark Seam

    fakeearth_2_20150712
    3.UV展開
    Sphere Projection
    Directionを
    Align to Objectに
    fakeearth_3_20150712 4.頭頂部の点を
    メモしておいた座標に
    収束させる
    fakeearth_4_20150712

    こうしてできたUVマップ。

    fakeearth_5_20150712

     

    [②]. 次にテクスチャを苔、海、地図の三枚読み込む

    fakeearth_6_20150712

    地図はhttp://www.collabonote.com/template/waiwai/map/003/003.htmこちらをお借りして陸を黒く塗りつぶした。

     

    [③]. 球を選択し、二つ目のUVマップを追加する

    fakeearth_7_20150712

     

    [④]. Editモードへ入り、UV Editingが見えるようにして、UV Mapsに追加したUVMap.mossを選択する。

    UV Editing上で[s]を押し、UVマップを拡大する。

    fakeearth_8_20150712

     

    これで、UVMapとUVMap.mossが異なるマップになった。

     

    [⑤]. あとはノードエディタで以下のように設定。

    前回の岩に苔をはる作業との大きな違いは、ColorRampのFacの入力元を、陸を黒くした白地図にしているところと、陸と海のテクスチャで違うUVマップを使っているところ。あと、海はDiffuseじゃなくてGlossyにしている。

    fakeearth_9_20150712

    陸と海のUVマップを変えている理由は、陸側のUVマップを拡大・縮小( [④]参照 )すれば海はそのままにして陸のテクスチャの解像度を自由に変えられるから。逆もまたしかり。

    fakeearth_11_20150712 fakeearth_10_20150712

    あと、海をGlossyにしているので、海だけてかっている。陸にてかりはない。

     

    一生お金に困らない生き方

     

     

    タイトル:一生お金に困らない生き方

    著者: 心屋仁之助

    ページ数:201ページ

     

    さて、普段ならぜってーこの手の本は買わないんだが、某所でメンタルブロックの外し方の参考書籍に上げられていたので購入。その方面の書籍にはやはり敵わないが、参考にはなった。少なくとも買って後悔はしていない。

     

    内容は、あえて大別するなら引き寄せ系なので、そっちを多少知っている人には目から鱗的な特別真新しいことは書いていない。ただ、引き寄せの法則関係の本の場合、自分が幸せになれるなにかを引き寄せるという、いわば漠然とした内容なのに対し、この本はお金に的を絞っているのでとても具体的でわかりやすい。

     

    内容を一言で表すと、メンタルブロックを外し、自己評価を上げ、お金の流れをせき止めない(ちゃんと使う)でいれば、なんか知らんが裕福になるよ、という、「そんな事で金持ちになれるなら誰も苦労はせんわ!だから誰もやらないんだ!」的なことが書かれている。(いい加減その矛盾に(ry )

     

    で、実際に心の癖を直したりするにはどうすればいいんですかということもちゃんと書いてはあるが、何しろ3~4時間で読めてしまったくらいの本なので小難しいことは何も書いていない。信じる信じないは別として誰でもすんなり理解できるはずだ。

     

    はずなのだが

    結局アマゾンレビューはアテにならんというか、Amazonの低評価、人数は少ないが、明らかに目次すらろくに読んでいないものがあるので、参考にしてはいけない。一般論として、アマゾンレビューから信者とアンチをふるい落とすのは大変なので、

    https://books.google.co.jp/books?id=DH7YymilTUsC&pg=PA7&dq=%E4%B8%80%E7%94%9F%E3%81%8A%E9%87%91%E3%81%AB%E5%9B%B0%E3%82%89%E3%81%AA%E3%81%84%E7%94%9F%E3%81%8D%E6%96%B9&hl=ja&sa=X&ved=0CDYQ6AEwAWoVChMIsNen2-jjxgIVxammCh2e4A6D#v=onepage&q=%E4%B8%80%E7%94%9F%E3%81%8A%E9%87%91%E3%81%AB%E5%9B%B0%E3%82%89%E3%81%AA%E3%81%84%E7%94%9F%E3%81%8D%E6%96%B9&f=false

    google様の力を借りて立ち読みしよう

     

    本当はレビューがどれぐらいアレなのかちょっと書いたのだが、読み方によっては個人攻撃 になりかねないので削除した。もし購入した人がいたら、是非照らし合わせてみて欲しい。ちなみに、潜在意識は科学的に研究も証明もされているはずなので、その活用という観点から見れば非科学的ではない(と思う)。常識的でないだけである。私は夕べ一気に読んだばかりなので効果があったとかなかったとかは全くいえないが、私の中の評価が結構高かったのは本当だ。

     

     

    Blender [岩に苔をつける] Cyclesでテクスチャの混ぜ方

     

     

     

     

    http://blendersketch.blogspot.jp/2014/11/waterfall-series3-1.html

    このチュートリアルの岩に苔を生やすところで何が起こっているかわからなかったので真面目に考えた。

    mosstone_1_20150712

    こんなのができあがる。

     

    [α]. まず石っぽいオブジェクトを作って(別にsphereやCubeでもいいけど)、Editモードに入って全頂点選択→[U]→[Smart UV Project]でUV展開する。

    次にオブジェクトにマテリアルを+して、ノードエディタへ行く。

    [β]. そして以下のように設定

    mosstone_2_20150712

    [γ]. ②、③はそれぞれ、普通に岩のテクスチャと苔のテクスチャを読み込んで、Diffuseの色として指定しているだけ。

     

    [δ]. ①が問題で、まずノイズテクスチャを作り、その色をColorRampの入力へつなげている。

    これをそのままDiffuseへつなげて適用すると、下のようになる。

    mosstone_3_20150712

     

    [ε]. この黒~白までの値を、[β]にあるMix ShaderのFacへ入れる。Mix ShaderはShader1とShader2を合成するが、合成の割合はFacで決まる。

    ●Facが0に近い場合、Shader1がより優先される

    ●Facが1に近い場合、Shader2がより優先される

     

    従って、ColorRampをマテリアルに適用した時([δ]参照)に黒に近い部分はよりShader1のテクスチャが、白に近い部分はよりShader2のテクスチャが強くなる。

    これによって[δ]の図の黒い部分はShader1で指定した苔のテクスチャが、白い部分にはShader2で指定した岩のテクスチャが出ることになる。

     

     

     

     

     

     

    Blender Cyclesでのバンプマップ

     

    ところで、Cyclesはマテリアルの設定にNodeエディタを使うことがほぼ前提になっているらしい。なぜなら殆どのチュートリアルではそうしているからだ。

    そこでバンプマップの使い方が今ひとつわかりづらかったので調べた。

     

    こんなのができあがる。

    helloout

     

    使うバンプマップはこれ:

    bump_hello  

     

    手順は

    ①UV展開する

    uvunwrap

     

    ②以下のようにノードを設定する

    nodemap

    ●[Add]-[Shader]-[Glossy BSDF]

    ●[Add]-[Shader]-[Diffuse BSDF]

    ●[Add]-[Shader]-[Mix Shader]

    ●[Add]-[Input]-[Texture Coordinate]

    ●[Add]-[Texture]-[Image Texture]

    ●[Add]-[Output]-[Material Output]

     

    Glossyはなくてもいいが立体感が出にくい。

     

     

     

     

    C++/CLIで自作クラスの配列をソート

     近所の村の市の店長はとてもいい人なのだが、中島みゆきの糸をBGMにかけていたときはさすがに神経を疑った。いったい何のつもりだ。泣き出すところだっただろうが。

    そんなわけでプエルトリコがデフォルトしたらしい。デフォルトってどういうことなのか正確には掴めていないんだが、要は○○日までにお金払いますよ、という約束を果たせなかったということのようだ。気持ち的に近い言葉としては、不渡りとか踏み倒しとか、そのあたりだろうか。

    http://www.yomiuri.co.jp/world/20150630-OYT1T50077.html

    この結果、高金利の金融商品「プエルトリコ債」が償還されなくなる恐れがあり、米国の投資信託などが多く保有していることから、国際金融市場に深刻な影響を与える懸念がある。

    どうやらこういうのはデフォルト宣言があった次の日にどうなる、というものではなく、数週間かけて影響が出てくるという。もうしばらくしたら連鎖倒産が始まるんじゃないか、と予想する人も沢山いるようだ。どうせゼロ金利だし、取り付け騒ぎとか預金封鎖がくる前に定期預金をタンス預金に切り替えたほうがいいかもしれない。箱根山も騒がしいしね。

     

    あとソートのほうなんだが、C#の例は腐るほどあるのにC++/CLIの例がなかなか見つからない。
    C#と同類のはずなのに^つけないといけないとか、C++と名乗りながら継承にpublicつけないとか、お前は誰だ言語なのでメモしておかないとはまる可能性がある

     

    // ConsoleApplication2.cpp : メイン プロジェクト ファイルです。
    
    #include "stdafx.h"
    
    using namespace System;
    
    ref class DataType{ //自作クラス 何でもいい
        int a;
        System::String^ b;
    public:
        int geta(){ return a; }
        System::String^ getb(){ return b; }
        void set(int _a,System::String^ _b){
            a = _a;
            b = _b;
        }
    };
    
    //比較用のクラス。
    //IComparer<>を継承したクラスを作成し、
    //virtual int Compareメンバ関数を定義する
    ref class Ccmp : System::Collections::Generic::IComparer<DataType^>
    {
    public:
        //xがyより小さいときはマイナスの数、大きいときはプラスの数、同じときは0を返す
        virtual int Compare(DataType^ x, DataType^ y)
        {
            if( x->geta() < y->geta() )
                return -1;
            else if( x->geta() > y->geta() ){
                return 1;
            }
            return 0;
        }
    };
    
    
    //使い方
    int main(array<System::String ^> ^args)
    {
        //データ(配列)を用意
        int sz = 7;
        array<DataType^>^ ary = gcnew array<DataType^>(sz);
    
        for(int i = 0; i < sz; i++ ){
            ary[i] = gcnew DataType();
        }
        ary[0]->set(5,"5");
        ary[1]->set(2,"2");
        ary[2]->set(7,"7");
        ary[3]->set(1,"1");
        ary[4]->set(3,"3");
        ary[5]->set(5,"5");
        ary[6]->set(8,"8");
    
        //ソート実行。
        Ccmp^ cmp = gcnew Ccmp();//比較用クラスのインスタンスを作成し、
        Array::Sort( ary, cmp);//Array::Sortの第二引数にそのハンドルを渡す
    
        //結果確認
        for(int i = 0; i < sz; i++ ){
            Console::WriteLine( "{0} {1}",ary[i]->geta() , ary[i]->getb() );
        }
    
        int k = Console::Read();
    
        return 0;
    }