制作日誌 - Gii !! -

April 11, 2012

LMDE → Ubuntu 12.04 紫ふたたび

メインOSとして使っていたLinuxMint Debian Edition(LMDE)をアップグレードしたらX Windowが立ち上がらなくなったので、Ubuntuに戻す。『デスクトップが緑になったよ』のエントリから使い始めたので、半年くらい使っていた。雑誌に載っているLinuxMintの記事が微妙らしいのだが、LinuxMint 12を使うメリットってインターフェースしかないので、Ubuntuで満足している人はMintに乗り換える必要はないと思う。


私が使っていたのはLinuxMint 12ではなくLMDEで、理由はOSの起動が早かったから。LMDEはDebianベースなので、Debian 6で向上した起動速度の恩恵を受けていた。さっきインストールしたばかりのUbuntu 12.04 Beta2は起動速度が10.04の頃までとはいかないが体感でかなり早いので期待できそう。LMDEは私のPCのグラフィックドライバの相性が悪かっただけだと思うので、アップグレードしても問題なく動作するならオススメ。きれいに日本語化するにはUbuntuの設定ファイルを使ったりするのでUbuntu使えないと厳しいと思うけど。


Ubuntu 12.04はインターフェースに関してもかなり良くなっていた。何よりもdash(MacのDockみたいなの)の動きが改善されたのが大きい。というわけで、LinuxMintが使えなくなったので今日からまたデスクトップは紫ですよ。

March 15, 2012

プログラミング入門

今年度は初音さんのゲームしか作ってないや。


来年度はプログラミング入門という授業を担当することになったので、JavaScript使ったらどうなるかなぁと思ってていろいろ試行錯誤中。あと今年はGo言語がブレイクする予感。サーバサイドはGoでクライアントサイドはJavaScriptで必要十分な気がしてるのは私だけでしょうか。

December 07, 2011

WebGL始めました

OpenGL ES 2.0ベースのプログラミングを始めるための環境を調べたところ、大体


WebGL → JavaScript

AndroidJava

iPhone → Object-C

Mesa3D → C + Linux


って感じだったので、まぁ、WebGLから始めるのがいいかなぁと思いました。

まずは目標として、簡単なアナログ時計くらい作れるようになりたい。

December 05, 2011

インパクト賞をいただきました!

この前作った「みくのスターダスト」がインパクト賞なる賞を受賞したので、フィギュアとマウスセットが届くらしいです。マウスセットはいいけど、フィギュアはどこに置きましょうかね。


せっかく賞を頂いたので、もっとマップを増やして今週中に更新したいと思います。

November 01, 2011

Heroku/Jの3つの起動方法とセキュリティモデル

前にmaven必須と書いたけど嘘だった。

まだHeroku/Jを始めて2週間程度なので許してね。

(みくのスターダスト作ってた期間を考えると実質1週間程度だけど…)


Getting Startedに紹介されているmavenを使う方法はHeroku/Jを使う1つの方法に過ぎない。他にもPlay!を使う方法と、サーバサイドJavaで一般的なwarファイルを配置する方法も使える。要するにProcfileの記述によって、サーバの起動方法を変更できる。


でも、何でも起動できるというわけではない。

例えば、下記のコードとProcfileを用意してみた。


HelloServer.java:

import java.io.*;
import java.net.*;

public class HelloServer {

    public static void main(String[] args) throws Exception {
        int port = Integer.parseInt(args[0]);
        ServerSocket server = new ServerSocket(port);
        while (true) {
            Socket socket = server.accept();
            PrintWriter w = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()));
            w.println("HTTP/1.0 200 OK");
            w.println();
            w.println("HELLO!!");
            w.close();
            socket.close();
        }
    }
}

Procfile:

web: java HelloServer $PORT

このHelloServerはローカル($foreman start)では何の問題もなく起動できるが、

デプロイでは、拒絶される。

$ git push heroku master
Counting objects: 10, done.
Compressing objects: 100% (8/8), done.
Writing objects: 100% (10/10), 1.99 KiB, done.
Total 10 (delta 3), reused 0 (delta 0)

-----> Heroku receiving push
 !     Heroku push rejected, no Cedar-supported app detected

To git@heroku.com:xxxxx-xxxxx-xxxx.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:xxxxx-xxxxx-xxxx.git'


この結果は当然といえば当然で、SecurityManagerの設定もないコードをサーバ上で走らせるわけにはいかない。

Play!についてはよく知らないけど、maven(pom.xml)やwarファイルの配置では、Jettyがsandboxの役割を果たすから安全という設計思想なのだろう。

October 29, 2011

みくのスターダストをオープンライセンスで配布したいが、出来ない件について

HerokuやったりJavaScriptやったり、さくらのクラウドも気になるし、

WOLF RPG Editorも2.0が出てるぅ。なんか、やる事が急に増えた気がするぞ。


「みくのスターダスト」はオープンライセンスで配布したいんだけど、

それに適合するライセンスって実際のところ無い。

ソースコードのオープンライセンスはGPLとかMIT Licenseとかいろいろあるのに

ゲームのライセンスについては、クリエイティブ・コモンズ(CC)しか運用できるのがないから。


でも、今回はゲームにピアプロのコンテンツが含まれているから、

CCで配布するには問題がある。

ピアプロが再配布を許諾しているのは、ピアプロのユーザーだけだから。


ピアプロ・ライセンスは、ニコニ・コモンズと違って、「宣言のみ」の項目がないので

投稿しないといけないのだけれど、ゲームは投稿できない。

だからゲームをピアプロ・ライセンスで配布することもできない。


だから、「みくのスターダスト」はクレジットに「Some rights reserved.」と

表記しているけど、実際のライセンスはまだ決まっていないのです。

October 28, 2011

Star→みくのスターダスト

実は雪導より前に2本、iアプリを制作していて

今回はそのうちの1本をリメイクしました。


昔作ったiアプリは現行機ではもう遊べないので、

こうやってJavaScriptで誰でも遊べるようになるのは良いね。



★「Star」 iアプリ&Jアプリ(J-PHONE用)

(C)2001, 2002 Gii

f:id:gi-chi:20111027151602p:image:left

f:id:gi-chi:20111027151601p:image