Processingでゲームを作ろうとしているのですがキーボードの同時入力がうまくいきません。

例えば下記のようなキー入力に応じて黒い四角が動くプログラムを実行しました。方向キーを一つだけ押したときはサクサク動いてくれるのですが、→と↓を同時に押しても斜めに進んでくれません。また、→と←を押した場合もどちらか片方の方に動いてしまいます。

このような問題を解決したいので、Processingでキーボードの同時入力を判定するにはどのようにすればいいのか教えてください。

float x, y;

void setup(){
size(400, 400);
noStroke();
smooth();
}

void draw() {
background(255,255,255);
fill(0,0,0);
rect(x,y,20, 20);

if (keyPressed && key == CODED){
if (keyCode == LEFT){
x -= 2;
}
if (keyCode == RIGHT){
x += 2;
}
if (keyCode == UP){
y -= 2;
}
if (keyCode == DOWN){
y += 2;
}
}

}

A 回答 (1件)

Processingでキーボードの同時入力


で検索するとそれらしいページがいくつか出てきますね。

Processingでゲームを作ろうとしているのですがキーの同時入力ができな... - Yahoo!知恵袋
というページも。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q英語における対義語・類義語

英語について,対義語や類義語はどのようなものが挙げられますか。以下は例です。
【対義語】hard⇔soft,easy【類義語】difficult≒hard≒tough

Aベストアンサー

日本語に訳してから対義語を考えるとおかしくなる。
そんなアホな事はしていないですよね?w
英英辞典や、英語の対義語辞典を見るべきでしょう。

Qコマンドプロンプトで{ENTRE]キーの入力を求められる箇所で、自動で{ENTER}を入力されるようにしたい。

お世話になります。

コマンドプロンプトである行で、{ENTRE]キーの入力を求められる箇所がありまして、キーボードから[ENTER]ボタンを押さないと次にすすまないのです。

そのコマンドプロンプトを編集して、自動で{ENTER}を入力されるようにしたいのです。

お手数ですがなにとぞよろしくお願いします。

Aベストアンサー

c:\enterという改行キーがはいったファイルを用意しておいて

hoge.bat < c:\enter
としてみては?

Q英語の類義語の学習法

 英語の類義語は、そのニュアンスの違いをつかむのに日本人の私たちには習得するのはなかなか難しいなと思っています。そこで皆様にご意見を伺いたいと思います。質問内容は以下の3点です。

(1)英語の類義語を勉強するときに、どんな点に注意されて勉強していますか。


(2)英語の類義語を勉強するのに、どのような資料を使いますか。(例、英英辞典、類義語辞典など)皆様が使われている辞典ないしは本を英語のものでも日本語のものでもかまいませんので、推薦していただけるものがありましたら教えてください。

(3)英語の類義語に関して皆様がご存じのサイトがありましたら教えて下さい。
  (自分で調べた範囲では、該当するものが見あたらなかったので)

 皆様からのご意見をお待ちしております。どうぞよろしくお願いいたします。

Aベストアンサー

こんにちは!
私も会社で通訳や翻訳業務に関わっているときには、どうしてこの言葉がこの文章にふさわしいのか、よくニュアンスも加えて他の社員の方に説明してます。やっぱりニュアンスまで理解しないと、非常に不自然な英語になってしまうからとても重要な点ですね。よく外国の友人に“...ですね?”というと“?? ああ、こういうことね。”といい直されたことも何度かありました。だから“英和辞典は使えない”と思うことも何度かあります。

(1)“類義語を勉強する”という意識はないのですが、必ずしている事といえば「意味の似通った言葉をピックアップ」→「辞書に記載されている各単語の意味と例文すべてに目を通し、それぞれどんな意味合いが強い単語かを把握」→「一番近い意味の言葉で文章を作る」大体このような流れですが、必ず英英辞典でこの作業をし、必要に応じて英和辞典も加えてやってます。あと一番のポイントとして言えることは、類義語の理解度は生の英語に接しながらニュアンスを理解することと比例してることでしょうか。

(2)類語辞典の(上級レベル)"ROGET'S INTERNATIONAL THESAURUS"、(初級~中級レベル)"Longman Language Activator"、英英辞典の(中級レベル~)"AMERICAN HERITAGE Dictionary"とこれらはアメリカの大学で推奨されてたもので、卒業後もすっと使ってます。あとは英和和英+国語の電子辞書ですね。

(3)5カ国に住んでいたという帰国子女の友人から教えてもらった"babylon"を私は愛用してます。ワンクリックで一発検索といったタイプのオンライン辞書ですが、意味だけでなく各種Glossary+各言語で意味を一度に比較できる優れものです。他、色んな機能がありますのでまた試してみてください。

こんなんですが、参考にしてもらえると幸いです!

参考URL:http://www.babylon.com

こんにちは!
私も会社で通訳や翻訳業務に関わっているときには、どうしてこの言葉がこの文章にふさわしいのか、よくニュアンスも加えて他の社員の方に説明してます。やっぱりニュアンスまで理解しないと、非常に不自然な英語になってしまうからとても重要な点ですね。よく外国の友人に“...ですね?”というと“?? ああ、こういうことね。”といい直されたことも何度かありました。だから“英和辞典は使えない”と思うことも何度かあります。

(1)“類義語を勉強する”という意識はないのですが、必ずしている事...続きを読む

QProcessing

Processing の勉強を始めました。
File名を入力して、そのファイルからデータを loadするというプログラムはProcessing では書けないのでしょうか。Examples には載ってないようですが。

Aベストアンサー

例えば画像だったら、非常に簡単にできますね。

以下は256×256のウィンドウを出して、ファイル名の画像を読み込み、ウィンドウの(0,0)からその画像を表示するというプログラムです。

ファイル名のところでファイルの絶対位置(=フルパス。例えば、C:\\users\\sample.png)を入れればその画像を表示できます。


PImage img = loadImage("ファイル名");

size(500,500);

image(img, 0,0);


他にも、一般的なファイルを読み込みたいときはselectInput()を使うと、ダイアログが出て、ファイルを選ぶとそのファイルの絶対位置をString型で得ることができます。
その位置を指定してloadImage()で読み込んだりなどができます。

loadImage()、selectInput()いずれもProcessingのリファレンスに載っているので、参照されるとよいかと思います。

loadImage():http://processing.org/reference/loadImage_.html
selectInput():http://processing.org/reference/selectInput_.html

例えば画像だったら、非常に簡単にできますね。

以下は256×256のウィンドウを出して、ファイル名の画像を読み込み、ウィンドウの(0,0)からその画像を表示するというプログラムです。

ファイル名のところでファイルの絶対位置(=フルパス。例えば、C:\\users\\sample.png)を入れればその画像を表示できます。


PImage img = loadImage("ファイル名");

size(500,500);

image(img, 0,0);


他にも、一般的なファイルを読み込みたいときはselectInput()を使うと、ダイアログが出て、ファイルを選ぶとそのファイル...続きを読む

Q類義語について

類義語について質問です。
中学生のいとこに質問されて返答に困っております。
Wordで、類義語辞典を使っていたときのことです。
Supperの単語をDinnerに置き換えるという操作をしました。
逆にDinnerの類義語を検索するとSupperは検索されませんでした。
いとこに「なぜ?」と聞かれなんと答えてよいか返答に困っております。
きちんとわかりやすいように説明をしてあげたいのですが、なんと答えたらよいでしょうか?
ネットでも色々検索してみましたが検索できませんでした。
教えてください。よろしくお願いします。

Aベストアンサー

アメリカに住んで40年目になりました。 私なりに書いてみますね。

これは、この二つの単語が違う意味合いを持っているからと言う事なのです。

類語と言う事は「似た意味を持っている単語」と言う事ですね。

単語にはいろいろな意味合いを持つ事が多いですね。

その意味合いの一つを取ってその意味合いとして、あるいは似た意味合いを出せる単語は何なのかを書いてあるのが類語辞典なのです。

ですから、夕飯と言う夕方から夜遅くまでの時間に食べる食事のことをさすと言う意味合いから見ればdinnerは「違う用法だけど」使えるときがある、としているわけです。 supper=dinnerではない、と言うことを類語辞典で入っていると言うことを認識しておかないといけないと言うことなのです。 midnight snackなども、夜中近くに食べるものと言うことからsupperの類語として載せている類語辞典は多いと思いますよ

では、なぜ、dinnerの類語としてsupperがないのか、と言うことになりますね。

なぜなら、このdinnerとは実は、「時間によって分類した」日本語的食事名とは違うと言う決定的に違うフィーリングに基づいた単語だからなのです。

supper夕食は時間によって分類されたものですね。 ですから、もしdinnerがその時間にされたのであれば類語辞典に載るわけです。

しかし、dinnerと言う単語はそうではなく、かしこまった食事、昼または夜に取る一日のうちの主要な食事と言うフィーリングを出している単語名わけです。 時間によって分類されると言うこととはまったく関係ない(朝ではないですが)と言う事なのです。

よって、dinnerの類語にsupperは出にくい、と言うことになるわけです。

ただ、食事、と言う意味合いであれば、類語としては出てくるでしょうね、breakfast, lunch, meal, snack, main meal, buffetなどたくさんの単語が載ることになり、パーティーと言う意味合いでdinnerの他にないかなと思ったら類語辞典を見て、partyと言う単語があれば、なんだよ、灯台元暮らしじゃんか、とpartyと言う単語を選ぶかもしれませんし、soireeと言うちょっとしゃれたフランス語からの外来語の方が良いな、と言う判断もするかもしれませんね。

thesaurus.comと言うサイトを使ってみてください。 類語辞典としての大御所的存在の辞典を無料でネットで使えるのです。

そして、その使い方は、まず、その単語の意味合い、フィーリングですね、が書かれた部分を探すわけです。

練習です。

まず、http://thesaurus.reference.com/browse/dinnerに行く事で、dinnerの類語を探す事になりますね。

そして、パーティーと言う意味合いの単語を探していると言うことであれば、一番下のdefinitionにpartyと書いてある所を見るわけです。

そうすると、このsoireeと言う単語がありますね。 この単語のことを知らなければ、この単語をクリックしてください。 そうすると、soireeの類語が出てきますね。 そしたら、http://thesaurus.reference.com/browse/soiree につきましたね。

一番上のほうか下のほうにdictionaryと書いてあるアイコンがありますから、それをクリックすると定義・訳が書かれたページにいけますね。

そうすると、an evening party or social gathering, esp. one held for a particular purpose: a musical soiree. と言う訳が出てくるわけです。

そして、また一番上か下のほうのEncyclopediaをクリックすると、http://www.reference.com/search?q=soiree に行き、partyについてより知るようになるわけですね。

これらの事を「紙の辞書」でやろうとしたらとてもやっていけませんね。

と言うことで、supperとdinnerとは日本での英語教育ではちょっと見逃しているところがあるので、dinnerを夕食としてしまうから、なぜ、dinnerの類語にsupperがないのか?と言う疑問が生まれてしまうわけです。 supperは時間的分類に寄っての単語、dinnerはいわゆる豪華さとかかしこまり具合などの分類要因で分けた単語だと言う事がコアのちが異なわけです。 これを知っていれば、この問題は解決できたのではないでしょうか。

参考になりましたでしょうか。 分かりにくいところがありましたら締め切る前にまた書いてくださいね。

アメリカに住んで40年目になりました。 私なりに書いてみますね。

これは、この二つの単語が違う意味合いを持っているからと言う事なのです。

類語と言う事は「似た意味を持っている単語」と言う事ですね。

単語にはいろいろな意味合いを持つ事が多いですね。

その意味合いの一つを取ってその意味合いとして、あるいは似た意味合いを出せる単語は何なのかを書いてあるのが類語辞典なのです。

ですから、夕飯と言う夕方から夜遅くまでの時間に食べる食事のことをさすと言う意味合いから見ればdin...続きを読む

QDelphiでキー入力を投げたい

ゲームコントローラに対応していないソフトウェアを、コントローラに対応させるべくプログラムを組んでいます。
Delphiのプログラムでコントローラからの入力を受け取り、該当するウインドウにメッセージを送信すればこの仕組みが実現できると考えたのです。

まず、以下の関数を記述しました。

function CallBackTest(WH: HWND; LP: LParam): BOOL stdcall;
var
Buff: array [0..255] of Char;
begin
if IsWindowVisible(WH) then
if GetWindowText(WH, Buff, 255) <> 0 then
TListBox(LP).Items.AddObject(Buff, Pointer(WH));
Result := True;
end;

次に、ListBoxを用意して、以下を実行しました。
EnumWindows(@CallBackTest, Longint(ListBox1));
ListBoxには実行中のウインドウタイトルが表示されます。そこで、目的のウインドウ名を選択して

for i := 0 to (ListBox1.Items.Count - 1) do
if ListBox1.Selected[i] then
PostMessage(hwnd(listbox1.Items[i]), WM_KEYDOWN, 入力キー名, 0);
end;

こんな感じで投げられるかな?と思ったのですが、悲しいほど無反応。
なにか根本的にやり方を間違えているのでしょうか・・・?

ゲームコントローラに対応していないソフトウェアを、コントローラに対応させるべくプログラムを組んでいます。
Delphiのプログラムでコントローラからの入力を受け取り、該当するウインドウにメッセージを送信すればこの仕組みが実現できると考えたのです。

まず、以下の関数を記述しました。

function CallBackTest(WH: HWND; LP: LParam): BOOL stdcall;
var
Buff: array [0..255] of Char;
begin
if IsWindowVisible(WH) then
if GetWindowText(WH, Buff, 255) <> 0 then
TListBox...続きを読む

Aベストアンサー

コードを試しました。WindowハンドルをAddObjectで記憶していますので下記は修正しました。

【修正前】PostMessage(hwnd(listbox1.Items[i]), WM_KEYDOWN, 入力キー名, 0);
【修正後】PostMessage(hwnd(listbox1.Items.Objects[i]), WM_KEYDOWN, {入力キー名} 48, 0);

この修正を加えたら、秀丸エディタには文字0を入力できました。しかし、メモ帳やワードパッドには入力できませんでした。

ウィンドウとメッセージについて調べて試す必要があると思います。EnumWindowsはトップレベルのウィンドウしか探しません。目的のアプリケーションがトップレベルのウィンドウにWM_KEYDOWNを送って反応するものかどうか。子ウィンドウあるいは別のメッセージにしたらどうか、フォーカスをあてたらどうか、など。

Q対義語でも類義語でもある2つの言葉

学校ではっ!と思いついたのですが、
この対義語でも類義語でもある言葉はありませんか?
例えば、
   軽い⇔重い   
これは対義語ですけれど、それに加え
類義語でもある2つの言葉はあるのでしょうか?

出来れば、単語でお願いしたいんですけれど、
短い文という感じでも大丈夫です。
あと、意味もお願いします。

Aベストアンサー

 [ANo.1]の者です。
 僕は基本的に[ANo.2]さんに賛同なのですが
 [ANo.6]さんや[ANo.7]さんの回答に
「なるほどー」とおもったので
 すこし真面目に考えてみました。
 これから挙げる言葉が本当に「対義語」なのかどうかは
 テキトーなので全く自信がありませんが、
 考えかたの参考になれば幸いです。

・憚る⇔控える

「憚る」は「憎まれっ子世に憚る」にある通り
「増長する・つけ上がる」などの意味が有ります。
 一方で「慎む・控える」などの意味も有るので
 対義語であり類義語でもあると言えそうです。

・先⇔後

 これも「先」には「憚る」と同じ特性があるので
「先にやった人」と「後にやった人」では対義語ですが
「先々(さきざき)のこと」「後々(のちのち)のこと」
「先のことを考えても…」「後のことを考えても…」
 これらでは類義語になってしまいますね。

 この[憚る]や[先]の様に、もともと一つの言葉で
 対義的な意味を持ち合わせているというケースは
 まだまだ沢山あるハズなので、
 これらに類義語をみつけてきてあげれば
 お求めのパターンを作れますね。

・「逃げなくていいのか?」⇔「逃げんのか?」
「逃げんのか?」を「逃げるのか?」ととるか
「逃げぬのか?(逃げないのか?)」ととるかです。
 これらは[ANo.7]さんと同じ戦法です。

・「しなさいよ」⇔「よしなさい」
「しなさいよ」の[よ]をうしろから前に持ってくれば
「よしなさい」になる、ということはどうでもいいんですが
「よしなさい」を「止しなさい・やめなさい」と解釈すれば
 対義語ですし、「良し、なさい」と解釈すれば類義語に。
 バカ言えwってかんじですね。

・「バカ(を)言え」⇔「バカ(を)言うな」
・「ウソ(を)つけ」⇔「ウソ(を)つくな」
 ふざけろ!ふざけるな!というのもあるみたいですが。
・「とてもじゃないが」⇔「とても」
 これも対義語&類義語になりそう。
 [ANo.4]さんの「分かるような分からないような」戦法。
 うしろに「できない」などを付ければ解りやすいかな。
 このあたりはマンガの[あたしンち]から。
 あと
・「ゾッとしない」⇔「ゾッとする」
 類義語といってもすこし違いますが…。まぁいいかな。

・「気の置けない」⇔「気の置ける」
 誤用ですけど。対義語にもなるし類義語にもなる、かな。
「偽善者ぶる」とか「カマトトぶる」とかでもできますかね。
 ついでに
「せわしい・せわしない」や「危険極まる・危険極まりない」も
 アリと言えばアリでしょうが、僕としてはこれらはナシで。

 真面目に考えておもいついたのはこんなところです。

 [ANo.1]の者です。
 僕は基本的に[ANo.2]さんに賛同なのですが
 [ANo.6]さんや[ANo.7]さんの回答に
「なるほどー」とおもったので
 すこし真面目に考えてみました。
 これから挙げる言葉が本当に「対義語」なのかどうかは
 テキトーなので全く自信がありませんが、
 考えかたの参考になれば幸いです。

・憚る⇔控える

「憚る」は「憎まれっ子世に憚る」にある通り
「増長する・つけ上がる」などの意味が有ります。
 一方で「慎む・控える」などの意味も有るので
 対義語であり類義語でもあると言えそう...続きを読む

Qwindowsでキー入力を拾うバッチ

WindowsVistaで、バックグラウンドでユーザのキー入力を拾うプログラムを書きたいと思っているのですが、これはバッチファイルでは無理でしょうか?
 よろしくお願いします。

Aベストアンサー

一般的にキー入力を拾うにはWinAPIのGetKeyを使います。
この実行ファイルを作って実行して変数を受け取ることができれば可能です。
http://hp.vector.co.jp/authors/VA017912/winapi/getkey.html

Q類義語辞典(または、それに類するもの)を探しています。

類義語辞典を探しています。ただ、辞典というよりも、2つ(以上)の単語のどこがどう違い、どういう使われ方をするのか、そのニュアンスの違いを解説してくれるものを探しています。

書店で類義語辞典を探したのですが、オックスフォードやコリンズなど、あるのは単語と、それに似た意味を持つ単語をずらずらと並べているものだけでした。

「これは」と思うものをご存知の方、お手数ですがよろしくお願いします。

Aベストアンサー

こんにちは!
私が愛用している辞書があるのですが、どちらかというと実用類語辞典タイプ、中級から上級レベルでESLクラスの学生向けのものです。
"Longman Language Activator"という辞書で、易しめの単語について、これでもかとこと細かく説明がされています。非常に判りやすく、ニュアンスの意味を理解するには必ずこの辞書から探しています。見出しはよく知っている単語でも、説明を読み進めて行くうちに、侮れないなーとよく思います。どちらかと言うと、口語から日常生活まで十分使える言い回しの内容が多く、大学院といった論文作成向きの辞書ではないと思いますね。英語の基礎固めには十分な辞書と思いますよ。

>書店で類義語辞典を探したのですが、オックスフォードやコリンズなど、あるのは単語と、それに似た意味を持つ単語をずらずらと並べているものだけでした。

このようなタイプの辞書はネイティブも使用している上級レベルのものです。判らないまま使用してもいたずらに時間がすぎるものなので、このレベルの辞書でじっくり実力をつけながら、併用してゆくことをお勧めします。

以前同じような質問に答えたことがありましたので、ご参考までにURLをお知らせします。

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=108920

こんにちは!
私が愛用している辞書があるのですが、どちらかというと実用類語辞典タイプ、中級から上級レベルでESLクラスの学生向けのものです。
"Longman Language Activator"という辞書で、易しめの単語について、これでもかとこと細かく説明がされています。非常に判りやすく、ニュアンスの意味を理解するには必ずこの辞書から探しています。見出しはよく知っている単語でも、説明を読み進めて行くうちに、侮れないなーとよく思います。どちらかと言うと、口語から日常生活まで十分使える言い回しの内容...続きを読む

QUWSCで変数をキー入力

UWSCで変数に応じたキー入力をしたいのですが、
どうすればいいのでしょうか?

たとえば
変数Aが 1 の場合は 01 とキー入力
変数Aが 25 の場合は 25 とキー入力
という感じで、変数Aは1~84までの値を取ります。

これをSELECT文で試してみたのですが、
1~5くらいまでならうまくいくのですが、
さすがに84まであるとエラーがでてしまいます。

SELECT A
CASE 1
KBD(VK_0,CLICK,40)
KBD(VK_1,CLICK,40)
CASE 2
KBD(VK_0,CLICK,40)
KBD(VK_2,CLICK,40)


CASE 84
KBD(VK_8,CLICK,40)
KBD(VK_4,CLICK,40)
SELEND

↑エラー
二桁目と一桁目で分けて入力すればよさそうですが、
どう処理すればいいのかわかりません。

また、仮に変数が文字列を値として取る場合も、
その文字列をそのままキー入力させるにはどうしたらよいでしょうか?

Aベストアンサー

そういう目的のために、SendStr関数が使えます。そうすれば、いちいちSelect文で切り分ける必要はなくなります。

変数Aが文字列の場合:
SendStr(GETID(GET_ACTIVE_WIN),A)

変数Aが数値の場合:
SendStr(GetId(GET_ACTIVE_WIN),Copy("0"+A,Length(A),2))

とすると、変数Aの内容がアクティブウィンドウに送信されます。ただし一つ注意があって、入力先のエディットボックスなりメモが選択されていないと空振りに終わるので、あらかじめBtn関数で入力したい場所をクリックさせておく必要があります。


人気Q&Aランキング

おすすめ情報