プチコン3号 SmileBASIC コミュニティ返信[47]親投稿おちゃめ ochame_nako2016/2/15 0:20バレンタイン絵を描きました。 オリキャラのツンデレ少女です。 ちなみにいつものように自作の「SIMPLE PAINT QSP」で描きました。1そうだね プレイ済み2017/11/03 19:18:15に取得
プチコン3号 SmileBASIC コミュニティ返信[15]親投稿おちゃめ ochame_nako2016/1/28 23:12左右移動の計算式は思いつくだけでも20通り以上ありますがどれを使っても問題はありません。 自分のプログラムに適したものや自分で理解しているものを使えば良いだけです。 例えば右方向移動が2倍速くなるというのが分かっているならばX=(B AND 8)/2-(B AND 4)とすれば良いということです。なぜ、2倍速くなるのかはB AND 8は0(右を押してない場合)か8(押した場合)の値を返し、B AND 4は0(左を押してない場合)か4(押した場合)の値を返すためです。2そうだね プレイ済み2017/11/03 18:23:30に取得
プチコン3号 SmileBASIC コミュニティ返信[7]親投稿おちゃめ ochame_nako2016/1/28 22:59(1)BUTTON()でボタン情報を取得できることが分かる (2)AボタンやBボタンを単独で押した場合の判定ができる (3)(他のボタンを押さず)AボタンとBボタンを両方同時に押した場合の判定ができる (4)(他のボタンを押していても)AボタンやBボタンを押した場合の判定ができる (1)~(4)の順番で難易度が高くなっていきますが現在どこまで理解されているかによって変わってくると思います。 (1)の状態からいきなり(4)のやり方を聞いた場合には理解には繋がらない恐れがあります。1そうだね プレイ済み2017/11/03 18:22:58に取得
プチコン3号 SmileBASIC コミュニティ返信[18]親投稿おちゃめ ochame_nako2016/1/28 22:46求められるものは職業プログラマと趣味プログラマで異なると思います。 職業プログラマならばMIKIさんが書いているような感じになると思いますが趣味プログラマであれば自信家であったり一芸に拘ったりという人は案外向いています。要するに自分がやりたいことが明確な人ほど良いということですね。 自分がこの程度のものしか作れない→他の人はすごい→自分が作る意味なんてない という思考に走る人は向いてないと思います。自分が作りたいものは自分でしか作れないしプログラムなんて誰でもできるようになるのですぐに結果を求めずに気楽にやればOKです。 それができる人が向いている人と言えるかもしれません。 3そうだね プレイ済み2017/11/03 18:23:01に取得
プチコン3号 SmileBASIC コミュニティ返信[16]親投稿おちゃめ ochame_nako2016/1/20 5:57GPUの機能を使わずに「テクスチャの実装」というのは要するに表示したい形状に合わせて元画像(テクスチャ画像)を「パース変形」すればいいだけのことなんです。 「正方形の画像を台形にパース変形する」というのは非常に多くの選択肢があるし、正方形から台形に変形する時点でカメラ位置が確定するので三角形から別の三角形に貼り付けるよりも容易であるためです。 また、マインクラフトのようなゲームを作るならば三角形のテクスチャを三角形に貼り付けて表示するよりも合理的です。0そうだね プレイ済み2017/11/03 14:36:45に取得
プチコン3号 SmileBASIC コミュニティ返信[13]親投稿おちゃめ ochame_nako2016/1/19 21:20テクスチャの実装方法にはいくつかありますが、最も単純なのは画面の座標を元にテクスチャ座標を計算してその部分をスキャンしてドット表示という流れです。端的に言えば逆行列を演算すれば良いです。三角形表示プログラムではラインごとでしたが、それをドットごとに行う感じです。 mkII版でも実装を試みようと考えましたがあくまで「リアルタイム表示」がウリなので立方体表示でさえ1fpsにも満たなくなるのでやめました。 プチコン3号ならば十分リアルタイム表示(ボタンやタッチ操作にある程度追従するレベル)ができるでしょう。 私が放置しているポリゴン表示プログラムは表示のみだとテクスチャ対応で9000ポリゴン/秒程度なので立方体では最大800fpsくらいで表示が可能だと思います。(あくまで理論値) ポリゴンが難しければまずは正方形の画像をパース変形して台形にしてみることから始めてはどうでしょうか。0そうだね プレイ済み2017/11/03 14:36:45に取得
プチコン3号 SmileBASIC コミュニティ返信[11]親投稿おちゃめ ochame_nako2016/1/19 6:22私がポケコンでワイヤーフレームに挑戦した80年代は何の情報もなくすべて自力のみ作りました。 幸いにして中学の時点ですでに高校数学の全教育課程を自力で終了させていたため特に困ることは無かったのですが手探り状態で作ったため結構完成までは長い時間がかかったしポケコンでは立方体1つ表示するのに数秒も時間がかかりリアルタイム表示は無理でした。 プチコンmkIIで作ったポリゴン表示プログラムはネットでの情報によってポリゴン初挑戦だったものの1日でできちゃいました。完成まではもう少しかかっているのですがかかった時間のほとんどが最適化処理の時間とUIを作るための時間です。mkIIならば立方体がワイヤーフレームで120fps程度、ポリゴンで20ps程度と十分なリアルタイム表示が可能ですね。(さすがに152ポリゴンのアンドアジェネシスは重いですが)0そうだね プレイ済み2017/11/03 14:36:45に取得
プチコン3号 SmileBASIC コミュニティ返信[7]親投稿おちゃめ ochame_nako2016/1/16 21:40趣味でプログラミングを行うならば自分が「やっていて楽しいもの」「やりたいことができるもの」を使えば良いと思います。 ただどの言語も基本は同じでありプチコンである程度作れるようになると移行する際にもそれほど苦労はしないでしょう。 逆に難しいからといってコロコロと使う言語を変えているといつまで経っても身に付きません。 あと趣味で行う場合には自分が作ったものを公開する際の反応の得られやすさもかなり重要になります。 プチコン3号であればMiiverseというコミュニティの存在はかなり大きいです。 仕事で使うならばそんなことを考える余地はなく指示されたものを使わなくてはならないですが。 ちなみに私は自分用のPCが部屋の中に10数台(+故障品10数台)ありますが「制約を楽しみたい」「固定環境で作れる」ということでプチコン3号でプログラミングをしています。0そうだね プレイ済み2017/11/03 18:24:42に取得
プチコン3号 SmileBASIC コミュニティ返信[8]親投稿おちゃめ ochame_nako2016/1/10 23:31BUTTON関数を使った入力判定については以前私がこちらのトピックスで詳しく書いています。 https://miiverse.nintendo.net/posts/AYMHAAACAAADVHjrpjduHA さらに詳しく知りたいという場合は「プチコン3号 BUTTON」でネット検索してください。1そうだね プレイ済み2017/11/03 18:25:38に取得
プチコン3号 SmileBASIC コミュニティ返信[14]親投稿おちゃめ ochame_nako2016/1/10 23:02今見直したらプチコン3号用のポリゴン表示プログラムは半年前から放置ではなく昨年の3月から10ヶ月間放置でした。0そうだね プレイ済み2017/11/03 18:25:52に取得
プチコン3号 SmileBASIC コミュニティ返信[13]親投稿おちゃめ ochame_nako2016/1/10 22:51mkIIの時はポリゴン表示プログラムを公開している人が誰も居なかったのに加えてニコ動などで動画として公開されているプログラムを見ても「それより速いものは十分にできる」と思い勢いで作ってしまいましたが、プチコン3号はポリゴン表示に挑戦している人が多くGTRIよりも遅いルーチンを今更公開しても無意味かなと思っています。 プチコン3号のスプライトによるポリゴン表示の進捗については過去に私のサイトの掲示板の方でも書いていたと思います。0そうだね プレイ済み2017/11/03 18:25:52に取得
プチコン3号 SmileBASIC コミュニティ返信[12]親投稿おちゃめ ochame_nako2016/1/10 22:50プチコン3号のポリゴン表示プログラムは現在はまだ未公開です。 無駄な処理が多いため自分で納得できるプログラムではないためです。 あと約9000ポリゴン/秒というのは最大値であって実効値ではないです。 スプライトによる円描画プログラムが約10万サークル/秒だったので2スプライトで1ポリゴンを表示しているといっても最適化すれば最大2~3万ポリゴン/秒くらいはいけそうなのでそれくらいの速度が出せたら公開しようと思います。 とはいえ現状はやりたいことが他にあるのでポリゴン表示は放置状態です。(再開時にはbug太郎さんのライブラリを参考にさせてもらいます) 0そうだね プレイ済み2017/11/03 18:25:52に取得
プチコン3号 SmileBASIC コミュニティ返信[72]親投稿おちゃめ ochame_nako2016/1/10 22:31こりんごさんへ 来年も(開催するか分かりませんが)ぜひご参加をお待ちしています。 Moh6anさんへ 実は私のお絵かきソフト「SIMPLE PAINT QSP」や簡易関数電卓QSPのお絵かき機能はちゃむさんと同じくペンを動かす速さで入り抜きを表現しています。 補間処理によってカクカクは抑えめになっています。 簡易毛筆QSPは入り抜きは逆で遅いほど太くすることで毛筆っぽさを実現しています。1そうだね プレイ済み2017/11/03 19:19:40に取得
プチコン3号 SmileBASIC コミュニティ返信[33]親投稿おちゃめ ochame_nako2016/1/10 22:26Lさんへ お題がイマイチよく分かりませんが大会開催の件については了解しました。 優勝者が決まった後で優勝商品用の絵に描くキャラ名と希望のシチュエーションを教えてください。 あとは参加者がたくさん集まると良いですね。 こりんごさんへ 気に入っていただき何よりです。 やっぱりギャップ萌えはいいですよね。 さらに照れて赤くなっているキャラは3倍萌えますし(笑)0そうだね プレイ済み2017/11/03 18:27:22に取得
プチコン3号 SmileBASIC コミュニティ返信[17]親投稿おちゃめ ochame_nako2016/1/10 22:19あとGRPの指定範囲の90度回転はGSAVEで配列にコピーし配列の中身を入れ替えてGLOADで簡単に実現できると思います2そうだね プレイ済み2017/11/03 18:25:43に取得
プチコン3号 SmileBASIC コミュニティ返信[16]親投稿おちゃめ ochame_nako2016/1/10 22:17公開キー【 N348VDZ6 】 https://miiverse.nintendo.net/posts/AYIHAAAEAAArVRTks7Xo1w GBLEND 範囲指定したGRPを指定のブレンドモードで半透明化して重ねる命令 GCOPYBLEND GCOPYの書式で指定のブレンドモードで半透明化して重ねる命令 以前GBLEND命令を使ってアルファチャンネル付きのレイヤー4枚に対応したお絵かきソフトを試作しましたが、プチコン3号があと最低でも(New3DSで動作時の)10倍は速くないと使い物にならないくらいの遅さでした。 最適化によって2倍くらいは高速化できそうな感じですがそれでも厳しいです。 気が向いたら一からコードを見直して公開しようと思います。0そうだね プレイ済み2017/11/03 18:25:43に取得
プチコン3号 SmileBASIC コミュニティ返信[15]親投稿おちゃめ ochame_nako2016/1/10 22:15お絵かきソフト等に使えそうな私の自作関数はこんな感じです。 公開キー【 DANQ83LJ 】 https://miiverse.nintendo.net/posts/AYIHAAAEAADHVHhmVEVb-g GRAY() 輝度を元に擬似的な256階調グレー表示を可能にする関数 RGB2GRAY 範囲指定したGRPを擬似256階調グレーに変換する命令 公開キー【 QKX3NEJF 】 https://miiverse.nintendo.net/posts/AYIHAAAEAABEVRTsKkwR2w BLINE 太さを自由に設定でき素早く描いても途切れない線描画命令0そうだね プレイ済み2017/11/03 18:25:43に取得
プチコン3号 SmileBASIC コミュニティ返信[9]親投稿おちゃめ ochame_nako2016/1/10 0:371画面最大256ポリゴンというスペックの制約は私が考えたスプライトでポリゴン表示を行う方法(任意の三角形をスプライトの変形によって実現する方法)のためには1ポリゴンあたりスプライトが2枚必要であるためです。 プログラムリストは見ていませんが恐らくbug太郎さんも同様の方法で実現していると思います。 私がmkIIのポリゴン表示プログラムで作った「アンドアジェネシス」が152ポリゴンだったので256ポリゴンあればキャラ表示だけならばそこそこいけそうな気がしますね。それでも背景(マップ表示)にポリゴン使ったらあっという間に足りなくなりそうですが。0そうだね プレイ済み2017/11/03 18:25:52に取得
プチコン3号 SmileBASIC コミュニティ返信[6]親投稿おちゃめ ochame_nako2016/1/9 23:34「ゲームプログラマになる前に覚えておきたい技術」は以前買いましたが、3D初心者でも詳しく記述してあるため良い本だと思います。 私はプチコンmkIIでポリゴンレースゲームを作りましたが、やはりmkIIでは最大でも15fpsしか出ないためかなり厳しかったです。 bug太郎さんのプログラムはまだ読んでないですが、スプライトを使った3Dエンジンならば1画面内で最大256ポリゴンという制限があるはずです。 半年前に私もスプライトによる3Dエンジン(テクスチャ対応)を作っていましたが最適化が不十分だったため9000ポリゴン/秒程度しか出なかったので今度bug太郎さんのリストを見て研究してみようと思います。(256ポリゴンで60fps出すためには最低15000ポリゴン/秒の速度が必要なので)0そうだね プレイ済み2017/11/03 18:25:52に取得
プチコン3号 SmileBASIC コミュニティ返信[68]親投稿おちゃめ ochame_nako2016/1/9 22:57こりんごさんのリクエストでひらひらのメイド服を着せられて恥ずかしがっているホミカ(ポケモンBWのジムリーダー)を描きました。(リクエスト元のトピックスにはこのGRPの公開キーを書いています) ちなみにこの絵はテンプレにある自作のSIMPLE PAINT QSPで描きました。3そうだね プレイ済み2017/11/03 19:19:40に取得