protected virtual void initWithGear(CCFactoryGear gear){
_gear = gear;
_gear.gameObject.name = "Node";
_gear.gameObject.transform.localPosition = Vector3.zero;
// _gear.gameObject.transform.localScale = new Vector3 (1, 1, 1);
_isRunning = false;
// _skewX = _skewY = 0.0f;
_rotation = 0.0f;
_scaleX = _scaleY = 1.0f;
_position = Vector2.zero;
_contentSize = Vector2.zero;
_anchorPointInPixels = _anchorPoint = Vector2.zero;
// "whole screen" objects. like Scenes and Layers, should set ignoreAnchorPointForPosition to YES
_ignoreAnchorPointForPosition = false;
_isUpdateTransformDirty = _isTransformDirty = _isInverseDirty = true;
// _vertexZ = 0;
// _grid = nil;
_visible = true;
_userTag = null;
_zOrder = 0;
// lazy alloc
// _camera = nil;
// children (lazy allocs)
_children = null;
// userData is always inited as nil
_userObject = null;
//initialize parent to nil
_parent = null;
// _shaderProgram = nil;
_orderOfArrival = 0;
// _glServerState = 0;
// set default scheduler and actionManager
CCDirector director = CCDirector.sharedDirector;
this.actionManager = director.actionManager;
this.scheduler = director.scheduler;
}