Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
185 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105154
次のページ(過去)
返信[10]
親投稿
おちゃめ ochame_nako
今回発表した「簡易毛筆QSP」は限界までリスト短縮を行うことでQSPながら毛筆っぽい挙動を実現した自信作ですが、独特のタッチで描けるもののお絵かきに向いているとは言い難いのです。 しかし、PETIT PAINT QSPはQSPながらペンや消しゴムの使いやすさだけを見ると他の高性能お絵かきソフトに負けないレベルだと思います。 シンプルな分だけ初見でも使いやすいと思うのでプチコン3号で何かラクガキ絵を描いてみたいという人はこちらの方が使いやすいと思います。 疑似筆圧が不要ならば通常版、疑似筆圧が必要ならばtype Bという感じで使い分けると良いでしょう。 通常版はver.1.1からさらに14文字リスト短縮可能なので追加機能を検討しているけど何が良いやら・・・。
1そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
上記で「失敗」とまで書いた「PETIT PAINT QSP」の疑似筆圧対応バージョン「type B」ですが、先日限界までリスト短縮をしたはずのPETIT PAINT QSP ver.1.1がさらに14文字もリスト短縮可能であることが分かったためQSPの範囲内で筆圧機能を付けることができました。 というわけでPETIT PAINT QSP type B ver.1.1です。ver.1.0にセーブ、ロード機能が付き通常のPETIT PAINT QSPとの違いは疑似筆圧の有無だけとなりました。 公開キー【 SD4XB3 】、ファイル名「1GQ_PNTB」 ※ファイル名はver.1.0と同じです
0そうだね
プレイ済み
返信[8]
親投稿
おちゃめ ochame_nako
プチコン3号ではお絵かきソフトがたくさん作られていますが疑似筆圧を前面に出したものがないので作ってみました。 疑似筆圧はPETIT PAINT QSPの別バージョンである「type B」で採用していますが、QSPながら疑似筆圧機能を搭載というのがウリなだけでセーブもロードも標準ではできないということで使い勝手が悪く個人的には失敗作でした。(私自身も通常版のPETIT PAINT QSPの方を多用していた) そこで、疑似筆圧をウリにするならばプチコン3号では見かけない入りと抜きの両方が出せるものにしたいということで今回のプログラムのアイデアを思いついたのですが、実はこれは近日公開予定の簡易関数電卓QSPに用意するお絵かきソフトでも使う予定のネタです。 こちらはこの簡易毛筆QSPとは異なる形で入りと抜きを表現する予定です。(でないとQSPには収まらないし、お絵かきには向いてない)
0そうだね
プレイ済み
返信[67]
親投稿
おちゃめ ochame_nako
こんな感じの独特なタッチの線で絵を描くことができます。 入りと抜き(特に抜きの方)は慣れないと難しいため描きやすさから言えばPETIT PAINT QSPの方が断然上です。
1そうだね
プレイ済み
返信[66]
親投稿
おちゃめ ochame_nako
QSPで新しいお絵かきソフトを作りました。疑似筆圧対応で「入り」と「抜き」の両方に対応することで毛筆のようなタッチで描くことが可能です。(公開キー【 X3E3Q43M ) 使い方や解説等はこちらを参照。 https://miiverse.nintendo.net/posts/AYMHAAACAAADVHkm7urBQQ 私の公開プログラムはすべてリストの末尾にマニュアルを記載しているので使い方はそれを見てもいいです。
1そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
太さが均一になるのを防ぐには乱数を使えばいいだけですが、抜きを細くするのは根本的にアルゴリズムを変えるしかありません。 そのためタッチしている時間だけではなくペンの移動速度も考慮して計算することで入りも抜きも細くすることが可能にしました。 このプログラムではゆっくり描くと太くなり、すぐに玉状になってしまうのですが、これはこれで毛筆っぽいと思います。
0そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
プチコン3号で疑似筆圧を取り入れたお絵かきソフトはいくつかありますが、ほとんどのものがタッチしているフレーム数によって線の太さを変えています。 しかし、その方法だと抜きの部分を細くすることはできないし一定のところで線の太さは固定化してしまうため太さは入り以外は均一になり毛筆っぽくありません。 これは私のPETIT PAINT QSP type Bを見てもらえたら分かると思います。 https://miiverse.nintendo.net/posts/AYIHAAAEAABEVRTpctBKZg
0そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
セーブはYボタンで一時ファイル(GRP1:@)へ上書き保存します。(一時ファイルのファイル名はPETIT PAINT QSPと共通) ロードはPETIT PAINT QSPと同様に起動時に一時ファイルから自動的にロードを行います。 なお、自信作が書けた(描けた)ので別名保存したいという場合は RENAME "GRP1:@","GRP1:好きなファイル名")としてください。 公開キー【 X3E3Q43M 】、ファイル名「1GQ_FUDE」
1そうだね
プレイ済み
返信[4]
親投稿
おちゃめ ochame_nako
筆の太さはPETIT PAINT QSPと同じく十字ボタンで瞬時に選択することができます。 十字ボタンを押さないときは極細ペン、上ボタンを押している間は細筆、下で中筆、左で太筆、右で極細筆です。極細ペン以外は疑似筆圧対応で書き方によって線の太さが変わってきます。 LもしくはRボタンを押している間はホワイトになります。(要するに消しゴム) 全消しをしたいという人はRボタンを押しながらYボタンを押して超極太のホワイトで消すと良いでしょう。
1そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
このソフトを使えばこんな感じの味のあるタッチの絵が描けます。(※カコちゃんはこりんごさんのオリジナルキャラクタ)
0そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
こんな感じで毛筆っぽい字が簡単に書けます。(※入りと抜きは少しだけ慣れが必要)
0そうだね
プレイ済み
プレイ日記
おちゃめ ochame_nako
QSP第18弾。毛筆っぽい線が描けるお絵かきソフト「簡易毛筆QSP」を作りました。 プチコン3号ではお絵かきソフトがたくさん作られていますが、「入り」と「抜き」の両方が表現できるソフトは初めてだと思います。(公開キーや解説等はコメントにて)
29そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
これがプログラムリストです。
0そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
変数1個1個セーブしなくても配列変数ならばまとめて1回でセーブできるし文字列変数に変換した後に結合しても1回でセーブできます。 数値を文字列に変換する場合は私の自作関数PSTR$を使うと便利です。 https://miiverse.nintendo.net/posts/AYIHAAAEAABEVRTp-ZVMIg 自分で変換するのが面倒というのであればMIKI★さんがまとめてセーブする自作命令VFILERを作っておられるのでそれを使うのが最も簡単です。 https://miiverse.nintendo.net/posts/AYMHAAACAAADVHkO66JHFQ
0そうだね
プレイ済み
返信[10]
親投稿
おちゃめ ochame_nako
上記の私のレスに補足 要するに分からないもの使わないものを無理に現時点で覚える必要はなく「多くのデータを処理する場合には配列変数という便利なものがある」という程度の知識さえあれば問題ないということです。 実際にそういうプログラムを作って「これを配列変数を使って記述するにはどうしたら良いですか?」とか「もっと簡潔に記述するにはどうしたら良いですか?」という具体的な疑問が出た際に配列変数の使い方を聞いたり調べたりした方が身に付きやすいのではないかと個人的には思います。 趣味のプログラミングであれば覚える順番はどうでも良くて必要なものから順に覚えていけば良いと思いますよ。
2そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
「配列を使わないとできないこと」というのはありません。 ただし、配列を使うことで短く記述できたり、簡単に処理できたり、高速に処理ができたりが可能になる場合があります。 これについては皆さんがすでに書かれているので省略します。 したがって、そういうプログラム(たくさんのデータを処理するプログラム)を作ってから配列を覚えると配列変数を使う理由やありがたみが分かると思います。 個人的には「今必要かどうか」が重要に思います。 必要でないものはいくら丁寧に教えてもらっても「だから何?」で終わってしまい理解するのがなかなか難しいです。
3そうだね
プレイ済み
返信[24]
親投稿
おちゃめ ochame_nako
IF A==1 THEN GOTO @A IF A==2 THEN GOTO @B IF A==3 THEN GOTO @C みたいなプログラムであればON~GOTOを使うのがベターだと私は思います。 ON A-1 GOTO @A,@B,@C ONとGOTOの間の式の値が0、1、2、3、・・・と変化する場合その順番に応じたラベルにジャンプできます。(式の値が3ならば4番目に記述したラベル)
2そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
DEF TOKEI X,Y  LOCATE X,Y  ?TIME$ END メインルーチン内でTOKEI 20,0のように記述するだけでプログラムが止まることなく自由な場所に時計を表示できます。
0そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
36進数くらいならこんな感じでINSTRを使って記述しても問題ないかなと個人的には思います。 C=INSTR("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ,A[I]) これで"Z"ならば35という値を返します。 とはいえ、これでも結局使えるのは0~35のBGだけになります。 すらさんが言いたいのはこういうことではなく例えば0がレンガ(動かせない)、1が石壁(動かせる)など好きなBGを割り当てる方法だと思います。 そのためには配列変数を使ってテーブルを作っておくと良いです。 配列変数BG[0]にはデータが0番の時のBGの番号、BG[1]にはデータが1番の時のBGの番号というようにしておけばC=BG[VAL(MID$(A$,I,1))]と変更するだけで0~9の数字で自由な10種類のBGを選ぶことが可能になります。
0そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
otta777さんへ BACKTRACEを使うのが一番分かりやすくて簡単ですが、やはり画面表示を伴うのが難点ですからね。 他にもスロット判別の方法はあると思いますが、VARが左辺値になることを使えば簡単に判定できそうだと思いついたので作ってみました。 ZEXさん、ヨッシーさんへ VARが関数にもなるというのは隠し要素ではなく公式仕様ですがほとんど情報がなく私は自力で解析しました。 解析して分かったことはMiiverseだけでは書ききれないので私のサイトのプチコン3号入門講座で解説しています。
0そうだね
プレイ済み