Then more code needed. ":setFriction(1)" is not enough. What else can give you nil? Of course not "1". And "setFriction" is the right name for the method.
Seems you forgot draw something to canvas2. You set shader, send uniforms to it, then leave and draw black screen. Maybe you need to put "love.graphics.draw(canvas1)" after shader:send("iChannel0", canvas1) or something like this? btw. You can use love.update event for drawing op...
...if I use that ".[\128-\191]*" it separates everything by individual character. ... Visible part of text is splitted to words by analysing each individual character. If it is one of the separators it is added to a table as a new word, else it continues to append next character to the cu...
OK, guys. Here you go. You need to use LÖVE v.0.10.0 to run .love file. Code is ugly, not consistent, uncommented, etc. It was just an experiment with GUI and text handling. EDIT: text selection, undo/redo not implemented yet. Clipboard supported. You can also fold code then ctrl-x/c/v. LICENSE: no ...
Text is UTF-8 so I'm using "gmatch(".[\128-\191]*")" to check for spaces, tabs, etc.
And separator for tab is ["\t"].
Quotes still not implemented fully in my code. Right now it's just switching state after each quote then checks current state.
I'm using approach from PIL: local function Set(list) local set = {} for _, l in ipairs(list) do set[l] = true end return set end local keywords = Set{"and", "break", "do", "else", "elseif", "end", "false", "for", "...
It seems that setting / unsetting canvases cancels any defined stencils in 0.9.2: local lg = love.graphics local canvas function love.load() canvas = lg.newCanvas(800, 600) end function love.draw() lg.setStencil(function() lg.rectangle("fill", 100, 100, 200, 200) end) lg.setCanvas() lg.set...