Blockchain code Metaverse VR

Unity×VR×Blockchain(356)

スポンサーリンク

//tips

//基本情報理解

FPGA/field programmable gate awayは汎用論理回路を備え、ハードウェア記述言語によってプログラミングすることで目的にあった論理回路を構築できる。

プログラミング言語に似た文法で論理回路の種類や配線状態、動作条件などを記述することができる。

一般的なモータは、モータに与える電圧と電流の積により仕事量を制御できる。負荷が同じ場合は乾電池一本よりも2本を直列に接続して電圧を2倍にした方がより高速に回転する。

PWM/pulse width modulationは電圧を変えるのではなく、電気を通している時間を制御することで仕事量を制御する。つまり、スイッチのオンとオフを制御することでモータの仕事量を制御する。

800*600ピクセル、24ビットカラーで30フレーム/秒の動画の配信に最小限必要な帯域幅を計算する。

1ピクセルあたり24ビットカラー使うので、1フレームあたりのデータ量はとして

800*600*24=11,520,000ビット

1秒に30フレームなので11,520,000ビット*30となり約350Mビット/秒であることがわかる。

//fittr

fittrは、ワークアウトをオンラインでユーザーごとにカスタマイズして提案するアプリのよう。マンツーマンでの個別レッスンよりリーズナブルで一ヶ月千円程度という価格提案にインパクトを感じた。一般的には個人レッスン一回で二千五百円程度のようなのでこれはかなりお得に思われた。

どのような内容のことを行うのかわからなかったので、youtubeを見た。かなりカスタマイズ性能が高そうに見え興味深かった。ピッチとしては触りの部分の価格インパクトで引きつけた後でクロージングという方向性だったのだろうか。

//smart contract

昨日記述していった内容を文法や構成を見直し、理解していく。

まずはsolidityから。codeをかきながらpureやviewってなんだったかを振り返った。

contract My1017Contract{
int a = -5;//負を取れる
uint b = 3;//整数のみ、小数点以下は存在せず。少数で書きたい場合は、weiの10階乗で表すことになる。
bool c=true;
string d="hi";//文字数はいくらでも良い
bytes32 e="ETH";//決まった長さの文字
address f=0x5B38Da6a701c568545dCfcB03FcB875f56beddC4;

function add(uint x, uint y) public pure returns(uint){
//pureはxとyの変数しか使わず、関数の外部の変数を取らないということ
//returns(uint)はuintで結果を返すということ
uint result;//変数
result =x+y;
return result;
}

function addByB(uint x)public view returns(uint result){
//viewは関数外の変数を使用する時に使う。今回は変数bを使用。
result = x+b;//bは上部にあるb = 3;

}

function changeB(uint x)public returns(uint){
//今回はviewでもpureでもなく関数外の変数の中身を変える。そのためview部分はなし。
b=x;
return b;

}
}

配列とmappingの仕組みも一緒に見ていく。

pragma solidity 0.8.4;

contract Array1{
uint[] numbers=[1,2,3,4,5];

function getNumbers() public view returns(uint[] memory){
//stringをリターンする時と同様に配列を返す場合もmemoryをつける
return numbers;//配列をreturnできる
}

function getNumberLength() public view returns(uint){
return numbers.length;
}

function addNumber(uint _number) public {
numbers.push(_number);//配列に引数_numberを加える
//登録していない配列場所にnumbers[5]=_number:とすることはできない。
//そのような場合はpushで追加する必要がある。
}

function popNumber() public {
numbers.pop();//配列の右端を消したい時。真ん中部分を消すときは全てずらしていく必要があるので厄介。

}
}

contract Array2{
uint[6] numbers=[1,2,3,4,5];

function getNumbers() public view returns(uint[6] memory){
return numbers;//[1,2,3,4,5,0]でリターンできる
}

function modifyNumber(uint _index,uint _number)public {
numbers[_index]=_number;
}

}

contract Mapping{
mapping(address=>uint) balance;//keyとなるアドレスに紐づいた残高の組み合わせ

function addBalance(uint _toAdd) public returns(uint){
//残高の振り込み
//送った人のアドレスはmsg.senderで得られる
balance[msg.sender]+=_toAdd;
return balance[msg.sender];//送った人の残高
}

function getBalance(address _address) public view returns(uint){

return balance[_address];//アドレスの人の残高
}

この修行はまだまだ続く模様。jsと構築の理解は少し先になるか。。

人気の記事

1

コロナによる需要変化 コロナパンデミックの影響で、人々は外に出られなくなり、自宅で過ごす時間が増えました。 この自粛ムードの中、下記のようなビジネスの需要変化が引き起こされています。 【利用者減少】 ...

2

米国レストランの決済時に毎日お世話になっていた「Square」のビジネスモデルについて本日はふれていきたいと思います。 「Square」とは、ネットにつながったモバイル端末と専用のカードリーダーを用意 ...

3

無料でネットショップを開けるアプリとして多くの人に驚きを与えたBASE株式会社が、2019年10月25日東証マザーズに上場しました。2020年2月時点で90万店を超えるショップを抱えるまでに成長してい ...

4

2011年にサービスを開始してから圧倒的な成長率を誇るインテリア通販サイト 【FLYMEe/フライミー】を皆さんご存じでしょうか。 「自分のイメージするインテリア、本当に欲しいインテリアがどこにあるの ...

5

ナイキのSNKRSが、なぜこれほどまでに人気なのか?調べてみました。 きっかけは米国での友達との会話。彼は自分のシューズをみせて、「これ20万円もしたんだぜ。」と語ってくれました。 あまり靴に興味がな ...

-Blockchain, code, Metaverse, VR
-, ,

Copyright© BUSINESS HACKER , 2021 All Rights Reserved Powered by AFFINGER5.