投稿

10月, 2011の投稿を表示しています

LWJGLとMaven

MavenプロジェクトにLWJGLを取り込むには pom.xml の dependencies に追加する必要があるようですが、自分の理解力不足でまだ達成できていません。

http://code.google.com/p/mavennatives/

上記のサイトでは雛形となるプロジェクトが公開されているので、こちらを利用したほうが簡単なようです。

LWJGL Basics 2 (Input)

LWJGL Basics 2 (Input)

import org.lwjgl.LWJGLException; import org.lwjgl.input.Keyboard; import org.lwjgl.input.Mouse; import org.lwjgl.opengl.Display; import org.lwjgl.opengl.DisplayMode; public class InputExample { public void start() { try { Display.setDisplayMode(new DisplayMode(800, 600)); Display.create(); } catch (LWJGLException e) { e.printStackTrace(); System.exit(0); } while (!Display.isCloseRequested()) { pollInput(); Display.update(); } Display.destroy(); } public void pollInput() { if (Mouse.isButtonDown(0)) { int x = Mouse.getX(); int y = Mouse.getY(); System.out.println("MOUSE DOWN @ X: " + x + " Y: " + y); } if (Keyboard.isKeyDown(Keyboard.KEY_SPACE)) { System.out.println("SPACE KEY IS DOWN"); } while (Keyboard.next()) { if (Keyboard.getEventKeyState()) { if (Keyboard.getEventKey() == Keyboard.KEY_A) { S…

5分で分かるMaven

Maven in 5 Minutes

上記のサイトを参考にしていますが、翻訳でも解説でもないので悪しからず。

ステップ1「インストール」

「インストール」とは言うものの解説は一切なし。入って無ければ、本家ページからダウンロードして、インストールすればいいよってくらい。Linuxだったらyumやaptでインストールできるだろうし、Macだったらmacportsで簡単にインストールできる。

バージョン確認は"mvn --version"で、Macなら以下の通り
$ mvn --version Apache Maven 3.0.3 (r1075438; 2011-03-01 02:31:09+0900) Maven home: /opt/local/share/java/maven3 Java version: 1.6.0_26, vendor: Apple Inc. Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home Default locale: en_US, platform encoding: MacRoman OS name: "mac os x", version: "10.6.8", arch: "x86_64", family: "mac"
ステップ2「プロジェクトの作成」

プロジェクトを作成するには以下のコマンドを実行する。
$ mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app \ -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false 各オプションの意味はディレクトリ構成と照らしあわせてみるとわかりやすい。
設定内容は ./my-app/pom.xml に記述されている。 難解だと言われているけど、それほど長いわけでもなく割りと理解しやすい。
jarファイルの生成については
$ mvn package 他にも、コンパイル "mvn compile&quo…

LWJGL Basics 1 (The Display)

LWJGL Basics 1 (The Display)
Java向けゲームライブラリLWJGLのチュートリアルその1。
要はcreate()で画面を表示して、update()で更新、destroy()で閉じる。 表示する画面についてはsetDisplayMode()で設定を行なっていて、例のプログラムでは解像度800x600の真っ黒な画面となります。
import org.lwjgl.LWJGLException; import org.lwjgl.opengl.Display; import org.lwjgl.opengl.DisplayMode; public class DisplayExample { public void start() { try { Display.setDisplayMode(new DisplayMode(800,600)); Display.create(); } catch (LWJGLException e) { e.printStackTrace(); System.exit(0); } while (!Display.isCloseRequested()) { Display.update(); } Display.destroy(); } public static void main(String[] argv) { DisplayExample displayExample = new DisplayExample(); displayExample.start(); } } コンパイルと実行には以下のようなスクリプトを用いると、作業が楽になります。
#!/bin/sh PTH=.:res:jar/lwjgl.jar:jar/lwjgl_test.jar:jar/lwjgl_util.jar:jar/jinput.jar: /usr/bin/javac -cp $PTH DisplayExample.java /usr/bin/java -cp $PTH -Djava.library.path=native/macosx/ DisplayExample Di…

ウェブでできるプログラミング

ブラウザだけで利用できるプログラミング環境のまとめ


実行環境

http://repl.it/

Ruby, Python, Lua, Scheme, JavaScript, Javascript.next, Move, Kaffeine, CoffeeScript, QBasic, Forth, Emoticon, Brainf**k, LOLCODE, Unlambda, Bloop

http://codepad.org/

C, C++, D, Haskell, Lua, OCaml, PHP, Perl, Python, Ruby, Scheme, Tcl

http://ideone.com/

Ada, Assemler, AWK, Bash, Bc, Brainf**k, C, C#, C++, C++0x, C99 strict, CLIPS, Clojure, COBOL, COBOL 85, Common Lisp, D, Erlang, F#, Factor, Falcon, Forth, Fortran, Go, Groovy, Haskell, Icon, Intercal, Java, JavaScript, Lua, Nemerle, Nice, Nimrod, Objective-C, OCaml, Oz, Pascal, Perl, PHP, Pike, Prolog, Python, R, Ruby, Scala, Scheme, Smalltalk, SQL, Tcl, Unlambda, Visual Basic .NET, Whitespace



エディタのみ

http://codr.cc/

複数人で共有、同時編集が行える。

http://paste.codebasehq.com/

コードを綺麗に表示してくれるだけ。Ruby, Javascript, HTML, CSS

http://pastebin.com/

https://gist.github.com/

vimのci

発端はこのツイートhttps://twitter.com/cwgem/status/119811120356786176
ci' and ci" in VIM for great justice.わかりやすいredditのトピックは"Did you know about ci''?"
http://www.reddit.com/r/vim/comments/9ltr5/didyouknowaboutci/ci を簡単に説明するなら、対応する括弧内の内容を変更する、ということになります。使用できる条件がやや限られていますが、編集モードで""や''などの括弧内にカーソルがあったとします。
そこで、ci" と入力すれば""で閉じられている中身が消去され入力モードに移行します。
同様に、''の中で ci' と入力すれば''の中身を一気に削除して入力することができます。ci の後に続く括弧の記号は開始でも閉じでも構いません。
()括弧の中を編集する場合は、()内にカーソルを移動して、ci( もしくは ci) と入力すれば中身が削除され入力モードに移行します。