Skip to content

Instantly share code, notes, and snippets.

View shinokaro's full-sized avatar

shinokaro shinokaro

View GitHub Profile
@shinokaro
shinokaro / gist:22e45f2c8bff3b5145bea263445d06d0
Last active October 28, 2023 08:06
Windows longest path size
# このコードで作成されたフォルダーの削除にはGIT CMDを管理者権限で起動し、
# rmdir c:\LongestPath /s
# を実行する。この方法以外で削除するとエラーが出ることがある。(アプリが最大パスに対応できていない)
Dir.chdir("c:\\")
first_dir = "LongestPath"
Dir.mkdir(first_dir) unless Dir.exist?(first_dir)
Dir.chdir(first_dir)
len = 247
loop do
@shinokaro
shinokaro / gist:7a1bcd3a2eb50233bb1e54a50ca7112d
Last active December 25, 2016 17:37
RGDAC2016 (18th day) Ruby っぽいゲーム・プログラミング Tips その2 (簡単にキャラクターイメージを生成する)

RGDAC2016 (18th day) Ruby っぽいゲーム・プログラミング Tips その2

 この記事は Ruby Game Developing Advent Calendar 2016 の18日目の記事です。今日は shinokaro が担当します。

 前日は t_tutiya さんの ゲームプログラミングの新手法「コード注入式ステートマシン」の可能性を探る(意図的な煽りタイトル) だったのでした…。

 はい、すみません、今26日です。この記事は遅刻しました。

はじめに

@shinokaro
shinokaro / gist:a50e023a101c6e31a2be52bd7fe2581e
Last active December 3, 2016 23:48
RGDAC2016 (4th day) Ruby っぽいゲーム・プログラミング Tips (初期値設定に tap メソッドを使う)

RGDAC2016 (4th day) Ruby っぽいゲーム・プログラミング Tips

 この記事は Ruby Game Developing Advent Calendar 2016 の4日目の記事です。今日は shinokaro が担当します。

 前日は aoitaku さんのはじめての司プログラミングでした。aoitaku さん、今年も Advent Calendar を開催してくださってありがとうございます!

はじめに

 ゲーム・プログラミング、特にコードだけでゲーム全体を構築(要は即席制作という事)しようとすると最初にぶつかる問題があります。それは初期値です、例えばキャラクターの最初の表示位置です。ゲーム・フレームワーク上で作業しているならば初期値を設定できるように設定ウィンドウ(GUI)や設定ファイルが用意されているでしょう。

 設定システムを自作で準備しようとすると結構な手間です。まずはゲームを立ち上げることに集中するべきです(素晴らしい思い付きを忘れる前に)。さらに Ruby では即時にコード実行(コマンドを入力してエンター・キーを叩く!)されるので、操作が必要な数値設定環境よりコード本体に直接記述できる方が望まれます(私は望みました)。

 それに Ruby らしく初期値を書くならば Ruby on Rails のように設定ファイルより設定コードで書きたいはずです。設定コードならば面倒な相対値計算から解放されます。計算式や変数を使って値の意味を明示したり、他のオブジェクトを元に値を算出したりもできます。

@shinokaro
shinokaro / gist:8554359
Created January 22, 2014 06:38
MyPC glxinfo
$ glxinfo
name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: ATI
server glx version string: 1.4
server glx extensions:
GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_OML_swap_method,
GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGIS_multisample,
@shinokaro
shinokaro / gist:8554165
Created January 22, 2014 06:12
PMX Model「熊音ミク[初音ミクKumazoモデル]Ver1.3」 http://bowlroll.net/up/dl4180 Motion「ぽっぴっぽー モーション」 http://bowlroll.net/up/dl2328 ウィンドウ表示後、画面が真っ白。
$ ./pmx ./KumaMku_Ver1.3/miku.pmx ./KumaMku_Ver1.3/popipo.vmd
PMX Ver. 2
Loading vertices...done.
Loading faces...done.
Loading textures...done.
Loading materials...done.
Loading bones...done.
Loading morphs...done
Loading display frame...done
Loading rigid body...done
@shinokaro
shinokaro / SoundGeneratorIdea.rb
Created December 22, 2013 14:51
Rubyコードによるサウンド・ジェネレーター試作版
require "dxruby"
# extend
class Array
def to_sound
::DXRuby::SoundEffect.new(self)
end
end
class Object
require "dxruby"
f = Fiber.new do
loop do
8.times do
Fiber.yield 0 # alpha 透明度, 0は透明。試すなら128(半透明)が分かりやすい
Fiber.yield 255 # red
Fiber.yield 0 # green
Fiber.yield 0 # blue
end

DXRubyからのHLSL使用方法 (DXRuby Advent Calendar 2013 21日目)

Author

しのかろ(Twitter@shinokaro)

URL

gist.github.com/shinokaro/8069531

加筆修正

2013-12-26

はじめに

 DXRuby Advent Calendar 2013 の21日目は“しのかろ”が記事をお送りします。前日はaotakさんが ゲーム作りました という記事を書かれました。内容は、実際にゲームを作る上での思考過程についてでした。

 ゲームを完成させるには他の作品ジャンルに比べて時間が掛かります。

@shinokaro
shinokaro / gist:7827341
Created December 6, 2013 16:10
DXRuby Advent Calendar 2013 7日目 title: DXRubyのSpriteを継承して拡張する方法について author: しのかろ(Twitter@shinokaro)
=begin
DXRuby Advent Calendar 2013 7日目
title: DXRubyのSpriteを継承して拡張する方法について
author: しのかろ(Twitter@shinokaro)
 DXRuby Advent Calendar 2013 も7日目。
 1週間目の終わりは“しのかろ”が記事をお送りします。
 世にゲーム・プログラマー多数あり、と言えども実際のコードにおいては、
文章の形で公開されることは稀です。
 ですから、今年のこのイベントで公開される記事を楽しみに毎日を過ごしています。
class Script < Fiber
def self.new(*dsl_mods, &block)
Class.new(self).tap do |c|
# DSLメソッド郡をextendする、DSLを組み合わせ可能にしている
dsl_mods.each{ |mod| extend(mod) }
# 生成したクラスではnewメソッドでインスタンスを生成するように書き換える
c.class_eval do
def self.new(*args, &block)