Upgrade to Pro — share decks privately, control downloads, hide ads and more …

NotITG now supports shaders!

Yutaka Obuchi
November 18, 2017
430

NotITG now supports shaders!

Introduction of NotITG and its shader feature

---

FMS_Cat
PICOTACHI #49
2017.11.18

https://www.facebook.com/events/1974615779474495/

Yutaka Obuchi

November 18, 2017
Tweet

Transcript

  1. Stepmania/OpenITG? Dance game simulator Somehow you can include Lua script

    into stepfiles - Flash-like APIs - Alternate path of arrows - Show sprites / 3D models - Get input signals - etc Ponponpon - by Puuro
  2. How to mod? <ActorFrame> <children> <Layer File="cat.png" OnCommand="%function( self )

    self:x( 320 ) self:y( 240 ) self:zoom( 2 ) self:rotationz( 90 ) end" /> <Layer Type="ActorFrame" InitCommand="sleep,9E99" /> </children> </ActorFrame> Sprite
  3. NotITG? Custom build of Stepmania/OpenITG by TaroNuke Fucktons of mods

    feature - Splines (Arrow path) - AFTs (Screen buffer) - Wireframe rendering - and tons of useful feature... Massacre - by Exschwasion since it’s open-source!
  4. Now it supports GLSL shaders You can write your own

    GLSL shaders and include it to stepfiles (not yet, will be released in next version of NotITG) - Post effects (incl. glitches) - “Shade” arrows and stuff - Arrow deformations - Particles using GPGPU Dying Breath of Stokesia - by Puuro/Kuut Appears in UKSRT 9, Stage 4b
  5. Actual code <Layer Type="ActorFrameTexture" OnCommand="%function( self ) CatAFT.aft( self, 'post'

    ) end" /> <Layer File="images/-white.png" Frag="shaders/post.frag" OnCommand="%function( self ) self:x( SCREEN_WIDTH / 2 ) self:y( SCREEN_HEIGHT / 2 ) CatAFT.sprite( self, 'post' ) CatCommand.add( 62.0, 63.0, function( phase ) local amp = cubicBezier( 0.2, 0.0, 0.0, 1.0, phase ) self:GetShader():uniform1f( 'amp', amp ) end ) end" /> AFT (ActorFrameTexture, i.e. frame buffer) Captures current frame and makes texture Sprite object w/ shader Apply the AFT as input texture of the shader Set an uniform variable