Skip to content

Instantly share code, notes, and snippets.

//----------------------------------------------------------------//
// Copyright (c) 2016 CloudTeam, Inc
// All Rights Reserved.
//----------------------------------------------------------------//
#ifndef DOBA_MOVEMENT_COMPONENT_H
#define DOBA_MOVEMENT_COMPONENT_H
#include <components/DOBAComponentBase-impl.h>
@Vavius
Vavius / DOBAComponentBase-impl.h
Created June 20, 2017 06:44
Entityx moai bindings
//----------------------------------------------------------------//
// Copyright (c) 2016 CloudTeam, Inc
// All Rights Reserved.
//----------------------------------------------------------------//
#ifndef DOBA_DOBA_COMPONENT_BASE_IMPL_H
#define DOBA_DOBA_COMPONENT_BASE_IMPL_H
#include <components/DOBAComponentBase.h>
#include <doba-util/DOBAGetSetHelper.h>
local vsh = [=[
attribute vec4 position;
attribute vec2 uv;
attribute vec4 color;
varying MEDP vec4 colorVarying;
varying MEDP vec2 uvVarying;
void main () {
gl_Position = position;
@Vavius
Vavius / gist:8585062
Created January 23, 2014 19:21
Moai mesh vs props performance test
MOAISim.openWindow ( "test", 1536, 2048 )
viewport = MOAIViewport.new ()
viewport:setSize ( 1536, 2048 )
viewport:setScale ( 1536, 2048 )
layerMesh = MOAILayer.new ()
layerMesh:setViewport ( viewport )
layerMesh:setSortMode ( MOAILayer.SORT_NONE )
@Vavius
Vavius / gist:8451928
Created January 16, 2014 09:09
Moai new GC related crash sample. Create a local prop (it will be collected on the first step!) and set its index or invoke any other method that calls ScheduleUpdate(). Crash in DepNodeUpdate when trying to access EVENT_UPDATE listener.
----------------------------------------------------------------
-- Copyright (c) 2010-2011 Zipline Games, Inc.
-- All Rights Reserved.
-- http://getmoai.com
----------------------------------------------------------------
MOAISim.openWindow ( "test", 320, 480 )
viewport = MOAIViewport.new ()
viewport:setSize ( 320, 480 )
@Vavius
Vavius / Flower label blurry text workaround
Created August 1, 2013 16:04
Workaround for blurry text in MOAI when Viewport scale is different from device screen resolution.
-- Label will create a bigger sized font and scale it down
-- if view size is less than screen size.
function Label:init(text, width, height, font, textSize)
DisplayObject.init(self)
local scale = math.min(M.getContentScale())
-- do not apply scale fix to Bitmap fonts
if type(font) == "string" then
local fileBase, fileExt = Resources.extractFileExtension(font)
if fileExt == ".fnt" then scale = 1 end
@Vavius
Vavius / gist:5964336
Created July 10, 2013 08:05
Another variant of TouchHandler. Sends touch events to all props under touch location. Also, it supports perspective 3d-view camera for layer. SwallowTouch method is designed to send cancel events to all touched props except the passed one. Used when we touched button and scrolled away to cancel button selected state.
--------------------------------------------------------------------------------
-- Event handler when you touch a layer.
-- @param e Event object
--------------------------------------------------------------------------------
local TMP_TABLE = {}
function TouchHandler:onTouch(e)
if not self.touchLayer.touchEnabled then
return
end
function ResourceMgr:initAtlasDeck(luaFilePath)
local atlas = self:loadTable(luaFilePath)
local frames = atlas.frames
local deck = MOAIGfxQuadDeck2D.new()
local boundsDeck = MOAIBoundsDeck.new()
deck:setBoundsDeck(boundsDeck)
deck.boundsDeck = boundsDeck
boundsDeck:reserveBounds(#frames)
function ResourceMgr:loadTable(filePath)
local tbl = assert(loadfile(filePath))
setfenv(tbl, {})
return tbl()
end
--------------------------------------------------------------------------------
-- DynamicTexturePack.lua
--
--
--------------------------------------------------------------------------------
local DynamicTexturePack = class()
local Page = class()
local MAX_SIZE = MOAIGfxDevice.getMaxTextureSize() or 2048