2009年10月24日

HTML5 - canvas(2)

ただランダムに線を引くコード。
確かこのアルゴリズムはブレゼンハムだったかな?
(Google Chromeブラウザでのみ動作チェックしています)

<ソースコード>
var ctx;
var bmp;
var w,h;
var dt;

function pset(x,y,r,g,b,a)
{
	var st = (x + w * y) * 4;
	dt[st++] = r;
	dt[st++] = g;
	dt[st++] = b;
	dt[st++] = a;
}

function line(sx,sy,ex,ey,r,g,b,a)
{
	var dx = ex - sx;
	var dy = ey - sy;
	var adx = Math.abs(dx);
	var ady = Math.abs(dy);

	if(adx > ady)
	{
		var ddy = Math.floor(adx / 2);
		var dxtick = (dx < 0)?-1:1;
		var dytick = (dy < 0)?-1:1;
		for(;sx != ex;sx += dxtick)
		{
			pset(sx,sy,r,g,b,a);
			ddy += ady;
			if(ddy >= adx)
			{
				ddy -= adx;
				sy += dytick;
			}
		}
	} else {
		var ddx = Math.floor(ady / 2);
		var dxtick = (dx < 0)?-1:1;
		var dytick = (dy < 0)?-1:1;
		for(;sy != ey;sy += dytick)
		{
			pset(sx,sy,r,g,b,a);
			ddx += adx;
			if(ddx >= ady)
			{
				ddx -= ady;
				sx += dxtick;
			}
		}
	}
}

function draw()
{

	line(Math.floor(Math.random() * (w - 1)),Math.floor(Math.random() * (h - 1))
		,Math.floor(Math.random() * (w  - 1)),Math.floor(Math.random() * (h - 1))
		,Math.floor(Math.random() * 255),Math.floor(Math.random() * 255),Math.floor(Math.random() * 255),255); 


	ctx.putImageData(bmp,0,0);
}

window.onload = function()
{
	ctx = document.getElementById("ctx").getContext("2d");
	w = document.getElementById("ctx").width;
	h = document.getElementById("ctx").height;
	bmp = ctx.createImageData(w,h);
	dt = bmp.data;
}
タグ:HTML5 canvas
posted by S.F. at 06:20| 千葉 晴れ| Comment(1) | HTML | このブログの読者になる | 更新情報をチェックする

2009年10月23日

canvas(1)

ただランダムに点を打つだけのサンプル。
(Google Chromeブラウザでのみ動作チェックしています)
http://sfpgmr.web.fc2.com/sample0001.html
var ctx;
var bmp;
var w,h;

function pset(x,y,r,g,b,a)
{
	var st = (x + w * y) * 4;
	var dt = bmp.data;
	dt[st++] = r;
	dt[st++] = g;
	dt[st++] = b;
	dt[st++] = a;
}

function draw()
{
	
	pset(Math.floor(Math.random() * 128),Math.floor(Math.random() * 128)
	,Math.random() * 256,Math.random() * 255,Math.random() * 255,255); 
	ctx.putImageData(bmp,0,0);
}

window.onload = function()
{
	ctx = document.getElementById("ctx").getContext("2d");
	w = document.getElementById("ctx").width;
	h = document.getElementById("ctx").height;
	bmp = ctx.createImageData(w,h);
	window.setInterval(draw,10);
}
posted by S.F. at 22:01| 千葉 晴れ| Comment(0) | HTML | このブログの読者になる | 更新情報をチェックする

2009年10月22日

メガデモ

メガデモシーンはまだ健在だった。
20091022.png
http://www.pouet.net/prod.php?which=30244

4Kデモとか、、、4Kのファイルサイズなのにすごい。
http://pouet.net/prod.php?which=53937

これも4Kデモだが、どうやって4Kに収めているのだろう。

http://pouet.net/prod.php?which=52938

http://pouet.net/
posted by S.F. at 21:53| 千葉 | Comment(0) | etc | このブログの読者になる | 更新情報をチェックする

Windows7発売

Windows7発売。
http://www.microsoft.com/japan/windows/
でも僕はボーナスまで様子見かな。
posted by S.F. at 20:28| 千葉 | 日記 | このブログの読者になる | 更新情報をチェックする

2009年10月20日

Microsoft - GDI2K & Chrome

そういえばMSはこんなことも言ってたな。。。
http://www.watch.impress.co.jp/pc/docs/article/980513/kaigai01.htm
posted by S.F. at 21:35| 千葉 | Comment(0) | etc | このブログの読者になる | 更新情報をチェックする

processing.js

javascriptで書かれた、描画ライブラリ。
http://processingjs.org/
これもすごいな。。。
posted by S.F. at 20:53| 千葉 | HTML | このブログの読者になる | 更新情報をチェックする

Chrome - NaCl

Native Client。
なんとChromeからネイティブコードを実行できるらしい。
Chrome版の安全なActiveXといったところだろうか?
http://code.google.com/p/nativeclient/
posted by S.F. at 19:18| 千葉 | Comment(0) | Library | このブログの読者になる | 更新情報をチェックする

2009年10月19日

HTML5 - canvas (2)

このサイトもすごい。
まるでflashで作成したかのようだ。
http://9elements.com/io/projects/html5/canvas/
posted by S.F. at 22:14| 千葉 | Comment(0) | HTML | このブログの読者になる | 更新情報をチェックする

2009年10月18日

HTML5 - canvas

HTML5のcanvasタグについて、情報収集を行っている。
まずはいろいろサンプルを漁っているところだ。

・3Dで関数を表示する
http://www.benjoffe.com/code/tools/functions3d/

・Dome風3Dダンジョンサンプル
http://www.benjoffe.com/code/demos/canvascape/

・円柱テトリス?
http://www.benjoffe.com/code/games/torus/

・スピログラフ
(昔鉛筆を差し込んで、ぐりぐり回して書いたやつ)
http://www.benjoffe.com/code/toys/spirograph/

・Decorative borders and the Canvas
http://www.agustinfernandez.com.ar/proyectos/canvas/

・Scribble
http://ponderer.org/download/canvas_demo/

・Chrome Experiments
http://www.chromeexperiments.com/detail/bomomo/

・An experimental browser-based FPS game engine in the HTML <canvas> tag.
http://canvex.lazyilluminati.com/

・canvasdemoサイト
http://www.canvasdemos.com/

・jsMSX
JavaScriptのMSXエミュレータ
http://jsmsx.sourceforge.net/#emulator

・Z-War
http://z-war.co.cc/

canvasから離れるが、下記サイトもすごい。
・Javascript Gaming
http://www.javascriptgaming.com/

・Javascript 8080 Emulator
http://www.bluishcoder.co.nz/js8080/
javascriptで作成された8080エミュレータである。
その上でインベーダーゲームが動作するのである。
すごすぎる。。。

・Javascript Wolfenstein 3D
http://www.nihilogic.dk/labs/wolf/
あのFPSの元祖がJavaScriptで再現。。。


posted by S.F. at 20:33| 千葉 晴れ| Comment(0) | HTML | このブログの読者になる | 更新情報をチェックする

WASAPI(19) バッファサイズとレイテンシ(2)

レイテンシ指定できるようにAudioDeviceSettingsPanelを改造することにした。残念ながら、この部分についてはカスタマイズ方法はライブラリ側では用意されていないので、juceライブラリのソースコードをコピーして変更した。
20091018.png
posted by S.F. at 20:06| 千葉 晴れ| Comment(0) | WASAPI | このブログの読者になる | 更新情報をチェックする

概算要求

国家予算の概算要求が95兆380億円と過去最高になり、自民党政権時代を上回ったとマスコミは騒いでいる。
今のところ、マスコミの姿勢は「民主党は公約実現のため、赤字国債を出してでもやろうとしている。これはいかがなものか?」である。
これは早計であると私は考える。なぜならば概算要求は、政府の予算方針にしたがって省庁が出してきた「たたき台」であって、これから「予算」成立までに国会で審議されなければ決定ではないからである。
旧自民党政権では、概算要求でほぼ決まりだったので、いたしかたない部分もあるのだが。

とはいえ、私もよく成立過程についてよく知らないので調べてみると、下記の手続きで進められることがわかった。

【0】.予算編成方針を閣議で決定する。(9月29日)

財務省から出ている平成22年度予算の方針は下記のとおり

平成22 年度予算編成の方針について
平成21 年9 月29 日
閣議決定
1.平成22 年度予算については、年内に編成する。
2.平成22 年度の予算編成に当たっては、ムダづかいや不要不急な事業を根絶すること等により、マニフェストの工程表に掲げられた主要な事項を実現していくため、以下の方針で臨む。
(1) 現行の概算要求基準(「平成22年度予算の概算要求に当たっての基本的な方針について」(平成21 年7 月1 日閣議了解))は廃止する。
(2) マニフェスト(「三党連立政権合意書」を含む。以下同じ。)を踏まえた要求の提出は、10 月15 日までに行うこととする。
(3) マニフェストに従い、新規施策を実現するため、全ての予算を組み替え、新たな財源を生み出す。これにより、財政規律を守り、国債マーケットの信認を確保していく。
(4) 各大臣は、既存予算についてゼロベースで厳しく優先順位を見直し、できる限り要求段階から積極的な減額を行うこととする。


【1】.各省庁が予算編成方針に従いそれぞれの予算案を提出(概算要求)
ここが、95兆380億円である。
概算要求の概要は各省庁のHPで見ることができる。
この時点での評価すると、総額は「方針」とはかなりかけ離れたものとなっていて、感覚的には「マニフェスト実施費用+前政権の宿題(ツケ)」となってしまっていることだ。方針(4)が徹底されていないような気がする。
また今回はシーリング(概算要求基準)が廃止され、予算枠がなくなってしまったので省庁とも歳出を抑えるということはないがごときの内容となってしまっている。
本当にそうなのかは、各省庁の概算要求を子細に見てみないとわからない。

【2】.財務省が取りまとめ、調整をおこない、財務省原案を作成
【2.5】復活折衝にて財務省原案の修正を行う。
【3】.財務省原案を閣議で議論し、決定すると予算案となる
【4】.予算案を衆院本会議に提出する。
【5】.衆院予算委員会にて議論。各省庁ごとに分科会を開き議論する。
【6】.衆院本会議で予算案を可決・否決する

【7】.参院本会議に予算案が提出される
【8】.参院予算委員会にて議論。各省庁ごとに分科会を開き議論する。
【9】.参院本会儀にて予算案を可決・否決する

いままでの政権では【3】−【9】までがほぼ形骸化していたわけであるが、現政権ではどうなるか見ものである。

posted by S.F. at 08:56| 千葉 霧| 日記 | このブログの読者になる | 更新情報をチェックする

2009年10月17日

Z80の研究

なんとなくZ80についてググっていたら、すごいページを発見。
http://homepage3.nifty.com/z80/
posted by S.F. at 20:43| 千葉 雨| Comment(0) | etc | このブログの読者になる | 更新情報をチェックする

HTML 5.0

HTMLに関してはかなり遠ざかっていたのだけれど、5.0になってマルチメディア関連のタグが増えている。
<audio>タグ オーディオストリーム
<video>タグ ビデオストリーム再生
<canvas>タグ 2D描画
これを使用すれば、下記のサイトのようなゲームつくりが可能である。
http://29a.ch/jswars/
すごい世の中になったものだ。。。
http://www.html5.jp/
ちょっと上記のサンプルを拝借してcanvasに描画してみたのが下の画面。
(おそらくMozillaやChromeでないと表示されません。)


posted by S.F. at 18:16| 千葉 晴れ| Comment(0) | etc | このブログの読者になる | 更新情報をチェックする

Chrome - V8

V8のことを調べていたら、下記サイトを発見
Chromeってすごいね。
http://www.chromeexperiments.com/
posted by S.F. at 13:55| 千葉 晴れ| etc | このブログの読者になる | 更新情報をチェックする

2009年10月16日

手羽先

今日は嫁に夕ご飯を作る宣言をしてしまったので、名古屋風の手羽先のから揚げを作ることにした。
手羽先とスペアリブをスーパーで買ってきて、てんぷら粉をまぶして油で15分程度揚げ、ダイショーの「手羽唐のたれ」と塩コショウをまぶして仕上げた。
結構うまくでき、子供も喜んで食べていたが、量が少なかった。。。
手羽先で満腹になるためには1Kgは必要かな。。。
まあ、僕は昼食が大久保二郎のつけ麺だったから、ちょうど良かったんだけれどね。
posted by S.F. at 20:19| 千葉 | Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする