Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
184 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104154
次のページ(過去)
返信[1]
親投稿
おちゃめ ochame_nako
ちなみに使用ソフトはQSPで出来た自作のカラー対応お絵かきソフトです。 プログラムは近日中に発表予定です。 以前QSPで作ったお絵かきソフト「PETIT PAINT QSP」はペンと消しゴムの品質や使い勝手を重視しているため単色絵専用でした。一応カラー絵は描くことが可能でしたが、1色ごとにプログラムの描画色の部分を書き換えて実行するという非常に面倒なことを行う必要がありました。 今回は最初からカラー用として作っているのでプログラムを書き換えることなく普通にカラー絵を描くことが可能です。
0そうだね
プレイ済み
返信[15]
親投稿
おちゃめ ochame_nako
変数Xの値が0の時に1、1の時に0にするにはX=!Xと記述するのが最短ですね あとプチコン3号では剰余もビット演算もそこまで大きな速度差はありません。 ビット演算を使うならば A=(A+1)AND 31 ではなく A=31AND(A+1) と記述する方が高速かつ1文字短縮できてお得です。 剰余はプチコンmkIIではC言語と同じく「%」だったので例えば8方向移動とかでも X=X-(B%16-B%4+1)%3+1Y=Y-(B%4+1)%3+1 のような感じの記述で超多用していましたがプチコン3号になって1つあたり3文字分も増加したので私はmkIIと比べて使う機会は激減しました。
1そうだね
プレイ済み
返信[12]
親投稿
おちゃめ ochame_nako
電卓とお絵かきソフトは結構相性がいいです。 図を描いたり、式を書いてみたりというのはお絵かきソフトがあればできます。 しかし、その際は疑似筆圧なんて不要で色も単色か2色くらいでも十分でしょう。 ちなみに上記の超シンプルなお絵かきプログラムにおいて最初に全消しを行わず「全消しボタン」を設けているのはお絵かき機能(手書き機能)とシステム(電卓機能)とを移動する際に描いたものが消えるのを避けるためです。 「式を書いて電卓に戻りまた式を見ようとしたら消えていた」では困りますので。 もっとも、グラフなどのGRPを使う機能を使用した際には消えてしまいますが、その際はセーブ機能があれば問題ないでしょう。
1そうだね
プレイ済み
返信[11]
親投稿
おちゃめ ochame_nako
KUさんへ 私のPETIT PAINT QSPはQSPとしてはペンや消しゴムの作りがリッチなのでそれを許容限界まで下げればかなりの短縮が可能になります。 だから十分可能だろうと思い作ってみてはいるのですが、現時点であと17文字短縮しないとQSPには収まりません(笑) ライブラリにペン描画関数とか描画色指定関数とか別途作れば余裕で短縮できるのですが、拡張ライブラリは汎用性の高いもののみ提供予定にしているので何とか削れる部分を削ってQSPに収める方法を探ってみます。 ちなみにBボタンで全消し、Lボタンで消しゴム、Yボタンでシステムに戻り1ドット幅の線のみ描画可能な超シンプルなお絵かきプログラムならばこんな感じになります。ここから(線が途切れない)疑似筆圧機能を付けたり色を指定できるようにしたり、セーブやロード機能を付けたらどうなるかが粗方想像できると思います。
1そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
R、G、Bの変化の仕方を変えれば下記のようなこともできます。 上が普通にIの値を0から255まで変化したときRGB(I,I,I)でグレーを表示したもので下が私が作った疑似256階調を実現するGRAY関数を使って表示したものです。 プチコン3号ではRGBの色指定は0~255の256段階で指定できますが、表示の時点で8の倍数の数字に丸められるため実質32段階でしか表示できません。 そこで、R、G、Bの値を均等に変えるのではなくあえてずらすことで中間の輝度にすれば擬似的に32階調よりも増やせるというわけです。
0そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
ビット演算は2進数について理解しておけば簡単に理解できますが、2進数が分からなくてもボタンの入力判定だけで良いならば特定の値を取り出す命令として覚えておけば簡単です。 https://miiverse.nintendo.net/posts/AYMHAAACAAADVHjrpjduHA さらに詳しく知りたい場合は「プチコン3号 ボタン判定」などのキーワードでネット検索してください。
0そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
変数BにBUTTON()関数の値が入っている場合、IF B AND 16 THEN ~でAボタンが押されたかどうかの判定を記述している人は多いですがANDを「かつ」に読み直した場合はこのIF文は「B かつ 16」になり、「0か1か」という「ANDを『かつ』として扱えるための条件」を満たしていません。 Bの値と16という値をビット演算を行い0か0以外かでTHEN以下を実行するかどうかが決まります。 では、このIF文に比較演算子を付けるとしたらどうなるかというとIF (B AND 16)==16 THEN ~となります。 ビット演算子は演算優先順位が低いためカッコが必要となります。 このように記述していけば「かつ」の部分はANDでも&&でもほぼ同じように動作します。
0そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
ANDはビット演算子。&&は論理演算子です。 根本的な部分(0か1しかない場合)ではほぼ同じように動作しますが、それ以外では動作が変わってきます。 では、なぜマニュアルにおいて似たような扱いになっているかというと比較演算子(「==」や「>」や「<」等)を記述した場合は0と1として扱われるため「同じような動作」に相当するためです。 IF BUTTON() AND 1 THEN~ には比較演算子が含まれていません。したがって、ANDと&&は異なる動作になるわけです。
0そうだね
プレイ済み
返信[81]
親投稿
おちゃめ ochame_nako
こりんごさんへ 抜きはペンを動かす速度のみで行っています。 そのため抜きを上手く表現するには一気に抜くのではなく少しずつ加速しながら抜くと良いです。(下図参照) 速度のみに頼らない抜き表現としては入りの逆をやるという方法があります。 要するに後から書いた線の方が細くなるようにするということです。 これを行うためには配列変数を確保して適当なフレーム数分だけタッチの座標を入れておく必要があります。 ただし、この方法だと描画が確定するまでタイムラグがあるのがネックです。
1そうだね
プレイ済み
返信[80]
親投稿
おちゃめ ochame_nako
nobuさんへ こりんごさんも書いておられますがツールの使い方は各自の自由でいいと思います。 ちなみに簡易毛筆QSPの線の色は正しくは黒ではなく透明色なんです。 だからDISPLAY 1の後にBACKCOLOR #REDと入れれば線の色は赤になります。適当なBGを表示させて書くというのもいいかもしれません。 書き初めいいですね。 こんな感じで書いてみました。(PCや3DSの画面を時計回りに90度回転させてください)
1そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
要するに1秒間に何回実行できるかをカウントすれば良いだけなのでMAINCNTを使ってもTIME$を使っても問題はありません。 1秒以内にfpsを表示したいとか0.1fps単位で求めたいというのであれば少しだけ工夫が必要になります。
0そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
KUさんへ 統計関係の機能はtwitterの方でも要望が出ていたのでQSPで作れる範囲内のものを何か実装する予定です。 QSPで出来るとなると一次回帰と相関係数くらいの簡単なものになりそうですね。 その前にこの簡易関数電卓QSP ver.2.0で動作するお絵かきソフトを作ります。 構想としてはQSPでありながら入りと抜きが表現できる疑似筆圧機能、任意の色が選択できる機能などを搭載予定です。 単体ソフトではなく他のソフト(機能)と切り替えて使うことを前提にするため正常にシステムに戻れるようにしなくてはならない(上記のグラフプログラム参照)ので文字数制限の大きなQSPで数10文字がすでに使えない状態なのはさすがに厳しいですが限界までリスト短縮すれば何とかなるでしょう。
1そうだね
プレイ済み
返信[14]
親投稿
おちゃめ ochame_nako
あんどさんへ 生はいいですよね! Newあっキーさんへ 幼稚園児とはなかなかレベルが高いですね(何の?) コーヒーのマスターさんへ どうもありがとうございます。ぜひ感想を聞かせてください。
1そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
MAINCNTは正確に1/60秒ごにインクリメントされているわけではなくわずかに誤差があるためTIME$と併用して長時間を1フレーム単位で正確に測るストップウオッチを作りたいならば有用ですね。
2そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
私が昨日作った入り抜きの表現ができるお絵かきソフト「簡易毛筆QSP」も三平方の定理を利用して「抜き」の表現を行っています。 距離はゲームを作る際にも利用することが多いため非常に有用な知識だと思います。
1そうだね
プレイ済み
返信[72]
親投稿
おちゃめ ochame_nako
 レス
1そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
1回鳴らしたBEEPをすぐに消すならばクッキーさんが書いている方法で消えます。 しかし、BEEPの仕様上一定時間(音色にもよるけど数フレーム~1秒)しか鳴らないため「ずっと鳴る」というのは本来であればありえません。 恐らく特定条件化でしかならないBEEPが何らかの原因でループ中に何度も鳴ってる状態になっていると思うのでプログラムを見ない限りは原因の特定は困難でしょう。
0そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
GLINEで画面消去すると塗り漏らしが大量に出てくるためGTRIで画面消去すれば望んでいる効果が実現できると思います。
0そうだね
プレイ済み
返信[8]
親投稿
おちゃめ ochame_nako
上記2の補足 ソフトはゲームだけではなくお絵かき用ソフトもたくさんあるためプチコン3号がお絵かき用のキャンバスになるし、音楽も作れるため音楽(自分で曲を作ったり、耳コミしての打ち込んだり)に興味があればそれでも十分買う価値はあります。
0そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
1 個人的にはすごく楽しめているので1000円は格安に感じるレベルですが、どんな面白いソフトも人によって向き不向きがあります。 RPGツクールやメイドイン俺などとは異なりどんなジャンルのゲームでもツールでも作ることが可能なのですが、最初のうちは覚えることが多いためそれを乗り越えられるかどうかで楽しめるかどうかが決まると思います。 ある程度プログラムの作り方を覚えれば3DS本体さえあればいつでもどこでも作れるため「退屈で暇をもてあます」なんてことが無くなります。 2 自分でゲーム等を作る以外にMiiverseやtwitterなどで公開されているゲーム等をダウンロードしてプレイすることが可能です。自分で作らなくてもそれらを利用するだけで1000円分以上の価値はあると思います。(これはあくまで私の主観です)
1そうだね
プレイ済み