見出し画像

進捗週報 / 小休止その2

ゲーム開発自体はちょっとお休みが続いてます。

今週やった事。

  • Ren'Pyのアップグレード。

  • 鷹館さんのゲームグラフィックに妙に惹かれていろいろ調べる。

  • 数理モデルの基礎について引き続き勉強。それに付随してpythonでmatplotlibを使ってみた。あとiPadのpythonista3上でも同じ事やってみた。

  • 特に外部ライブラリを使用しないでもpythonでSunVoxのライブラリファイルが動くことを確認。

  • 知らなかったファンタジーコンソールを見つけて「ほほう!」となるなど。

鷹館さんの次回作「亜電」のPV

今風のドット絵じゃないんだけど凄く好き。伝えたいものが十分に伝わってくる感じがする。憧れる。曲も好き。

sunvox.libとpython

公式でのLinux上でpythonからsunvox.libを扱う例

import ctypes
import time

# get script directory
import os
scriptpath= os.path.realpath(__file__)
scriptdir = os.path.dirname(scriptpath)
# construct full path to sunvox lib
libname=os.path.join(scriptdir,"sunvox.so")

if __name__ == "__main__":
    # Load the shared library into ctypes
    svlib = ctypes.CDLL(libname)

    # CONNECT TO SOUND SYSTEM
    svlib.sv_init.restype=ctypes.c_int32
    ver = svlib.sv_init(None, 44100, 2, 0 )
    print (f"Init Sound succeeded!") if ver>=0 else print (f"Link Sound failed, error:{ver}")

    if( ver >= 0 ):
        # REQUEST SLOT
        slotnr=0
        success=svlib.sv_open_slot(slotnr)
        print (f"Open slot succeeded!") if success==0 else print (f"Open slot failed, error:{success}")

        # LOAD FILE
        svfile=os.path.join(scriptdir,"test.sunvox")
        bsvfile = svfile.encode('utf-8')
        success = svlib.sv_load(slotnr, ctypes.c_char_p(bsvfile))
        print (f"Open file succeeded!") if success==0 else print (f"Open file failed, error:{success}")

        # SET VOLUME
        svlib.sv_volume(slotnr,256)

        # START PLAY
        success = svlib.sv_play_from_beginning(slotnr)
        print (f"Play file succeeded!") if success==0 else print (f"Play file failed, error:{success}")

        # LET PLAY FOR 5 SECONDS
        time.sleep(5)

        # STOP PLAY
        svlib.sv_stop(slotnr)

        # CLOSE SLOT
        svlib.sv_close_slot(slotnr)

        # RELEASE SOUND SYSTEM
        svlib.sv_deinit()

Macでもlibの名前だけ書き換えれば普通に動きましたし、RenPyからctypesをimportも出来ました。と言う事は多分RenPyでSunVoxのMODは鳴らせる。
と言う事は凄く小さなデータで超絶良い音をガンガン鳴らす事が可能!
(音の良さは下のHPで聴けるので是非。sunvox.libは多分emscripten経由でJavaScriptにも移植されているのです。)

MEG-4と言うファンタジーコンソール

めちゃくちゃAmigaっぽい画面

これもPICO-8インスパイアなファンタジーコンソールなんですが、曰く

To get the feeling: if those other consoles were the NES, then MEG-4 would be the Amiga. :-)

https://gitlab.com/bztsrc/meg4/

って事で比較的高性能だし、遊び心満点でした。

いいなと思ったら応援しよう!