open source
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
/**
|
||||
@file JCIDGenerator.cpp
|
||||
@brief
|
||||
@author James
|
||||
@version 1.0
|
||||
@date 2016_5_12
|
||||
*/
|
||||
|
||||
#include "JCIDGenerator.h"
|
||||
|
||||
namespace laya
|
||||
{
|
||||
JCIDGenerator::JCIDGenerator()
|
||||
{
|
||||
}
|
||||
JCIDGenerator::~JCIDGenerator()
|
||||
{
|
||||
}
|
||||
bool JCIDGenerator::deleteID(GLuint nFakeID)
|
||||
{
|
||||
//只设置为无效,不从vector中删除
|
||||
if (nFakeID >= 0 && nFakeID < m_vIDTable.size())
|
||||
{
|
||||
m_vIDTable[nFakeID] = 0;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
bool JCIDGenerator::setRealID(GLuint nFakeID,GLuint nRealID)
|
||||
{
|
||||
if (nFakeID == m_vIDTable.size())
|
||||
{
|
||||
m_vIDTable.push_back(nRealID);
|
||||
}
|
||||
else if (nFakeID > m_vIDTable.size())
|
||||
{
|
||||
int nLastSize = m_vIDTable.size();
|
||||
m_vIDTable.resize(nFakeID +1);
|
||||
//把中间的空的,全部填充成无效的
|
||||
for (int i = nLastSize,n=m_vIDTable.size(); i < n; i++)
|
||||
{
|
||||
m_vIDTable[i] = 0;
|
||||
}
|
||||
m_vIDTable[nFakeID] = nRealID;
|
||||
}
|
||||
else
|
||||
{
|
||||
m_vIDTable[nFakeID] = nRealID;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
void JCIDGenerator::reset()
|
||||
{
|
||||
m_vIDTable.clear();
|
||||
}
|
||||
}
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
//-----------------------------END FILE--------------------------------
|
||||
@@ -0,0 +1,53 @@
|
||||
/**
|
||||
@file JCIDGenerator.h
|
||||
@brief
|
||||
@author James
|
||||
@version 1.0
|
||||
@date 2016_5_12
|
||||
*/
|
||||
|
||||
#ifndef __JCIDGenerator_H__
|
||||
#define __JCIDGenerator_H__
|
||||
|
||||
#include <string>
|
||||
#include "util/Log.h"
|
||||
#include <vector>
|
||||
#if __APPLE__
|
||||
#include <OpenGLES/ES3/gl.h>
|
||||
#else
|
||||
#include <GLES3/gl3.h>
|
||||
#endif
|
||||
|
||||
namespace laya
|
||||
{
|
||||
class JCIDGenerator
|
||||
{
|
||||
public:
|
||||
|
||||
JCIDGenerator();
|
||||
|
||||
~JCIDGenerator();
|
||||
|
||||
bool deleteID(GLuint nFakeID);
|
||||
|
||||
bool setRealID(GLuint fakeID,GLuint realID);
|
||||
|
||||
GLuint getRealID(GLuint fakeID)
|
||||
{
|
||||
return fakeID < m_vIDTable.size() ? m_vIDTable[fakeID] : 0;
|
||||
}
|
||||
|
||||
void reset();
|
||||
|
||||
protected:
|
||||
|
||||
std::vector<GLuint> m_vIDTable;
|
||||
|
||||
};
|
||||
}
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#endif //__JCIDGenerator_H__
|
||||
|
||||
//-----------------------------END FILE--------------------------------
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,249 @@
|
||||
/**
|
||||
@file JCLayaGL.h
|
||||
@brief
|
||||
@author James
|
||||
@version 1.0
|
||||
@date 2018_5_25
|
||||
*/
|
||||
|
||||
#ifndef __JCLayaGL_H__
|
||||
#define __JCLayaGL_H__
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <list>
|
||||
#include <unordered_map>
|
||||
#if __APPLE__
|
||||
#include <OpenGLES/ES3/gl.h>
|
||||
#else
|
||||
#include <GLES3/gl3.h>
|
||||
#endif
|
||||
#include "../Image/JCImageManager.h"
|
||||
#include "JCIDGenerator.h"
|
||||
#include <Manager/JCArrayBufferManager.h>
|
||||
#include "../RenderEx/JCGlobalValue.h"
|
||||
#include "../Manager/JCOrderResManager.h"
|
||||
#include "../RenderEx/JCRegister.h"
|
||||
#include <buffer/JCCommandEncoderBuffer.h>
|
||||
|
||||
//1024*1024*4
|
||||
#define TEX_IMAGE2D_DUMMY_MAX_SIZE 4194304
|
||||
|
||||
|
||||
namespace laya
|
||||
{
|
||||
typedef GLuint WebGLShader;
|
||||
typedef GLuint WebGLProgram;
|
||||
typedef GLuint WebGLBuffer;
|
||||
typedef GLuint WebGLFramebuffer;
|
||||
typedef GLuint WebGLRenderbuffer;
|
||||
typedef GLuint WebGLTexture;
|
||||
typedef GLuint WebGLUniformLocation;
|
||||
class JCWebGLPlus;
|
||||
/**
|
||||
* @brief
|
||||
*/
|
||||
class JCLayaGL
|
||||
{
|
||||
public:
|
||||
JCLayaGL(int nWidth,int nHeight,JCArrayBufferManager* pArrayBuferManager, JCImageManager* pImageManager,JCIDGenerator* pIDGenerator,JCIDGenerator* pProgramLocationTable,JCRegister* pRegister,JCWebGLPlus* pWebGLPlus);
|
||||
static void _texImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels);
|
||||
static void _createVertexArray(GLuint& vao);
|
||||
static void _bindVertexArray(GLuint vao);
|
||||
static void _deleteVertexArray(GLuint& vao);
|
||||
virtual ~JCLayaGL();
|
||||
virtual bool isContextLost();
|
||||
virtual void* getExtension(const std::string& name);
|
||||
virtual void activeTexture(GLenum texture);
|
||||
virtual void attachShader(WebGLProgram program, WebGLShader shader);
|
||||
virtual void bindAttribLocation(WebGLProgram program, GLuint index, const std::string& name);
|
||||
virtual void bindBuffer(GLenum target, WebGLBuffer buffer);
|
||||
virtual void bindFramebuffer(GLenum target, WebGLFramebuffer framebuffer);
|
||||
virtual void bindRenderbuffer(GLenum target, WebGLRenderbuffer renderbuffer);
|
||||
virtual void bindTexture(GLenum target, WebGLTexture texture);
|
||||
virtual void blendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
|
||||
virtual void blendEquation(GLenum mode);
|
||||
virtual void blendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
|
||||
virtual void blendFunc(GLenum sfactor, GLenum dfactor);
|
||||
virtual void blendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
|
||||
virtual void bufferData_size(GLenum target, GLsizeiptr size, GLenum usage);
|
||||
virtual void bufferData(GLenum target, int dataSize, char* data, GLenum usage);
|
||||
virtual void bufferSubData(GLenum target, GLintptr offset,int dataSize, char* data);
|
||||
virtual GLenum checkFramebufferStatus(GLenum target);
|
||||
virtual void clear(GLbitfield mask);
|
||||
virtual void clearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
|
||||
virtual void clearDepth(GLclampf depth);
|
||||
virtual void clearStencil(GLint s);
|
||||
virtual void colorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
|
||||
virtual void compileShader(WebGLShader shader);
|
||||
virtual void compressedTexImage2D(GLenum target, GLint level, GLenum internalformat,GLsizei width, GLsizei height, GLint border,int dataSize,char* data);
|
||||
virtual void compressedTexSubImage2D(GLenum target, GLint level,GLint xoffset, GLint yoffset,GLsizei width, GLsizei height, GLenum format, int dataSize,char* data );
|
||||
virtual void copyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
|
||||
virtual void copyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
virtual WebGLBuffer createBuffer(int fakeID);
|
||||
virtual WebGLFramebuffer createFramebuffer(int fakeID);
|
||||
virtual WebGLProgram createProgram(int fakeID);
|
||||
virtual WebGLRenderbuffer createRenderbuffer(int fakeID);
|
||||
virtual WebGLShader createShader(int fakeID,GLenum type);
|
||||
virtual WebGLTexture createTexture(int fakeID);
|
||||
virtual void cullFace(GLenum mode);
|
||||
virtual void deleteBuffer(WebGLBuffer buffer);
|
||||
virtual void deleteFramebuffer(WebGLFramebuffer framebuffer);
|
||||
virtual void deleteProgram(WebGLProgram program);
|
||||
virtual void deleteRenderbuffer(WebGLRenderbuffer renderbuffer);
|
||||
virtual void deleteShader(WebGLShader shader);
|
||||
virtual void deleteTexture(WebGLTexture texture);
|
||||
virtual void depthFunc(GLenum func);
|
||||
virtual void depthMask(GLboolean flag);
|
||||
virtual void depthRange(GLclampf zNear, GLclampf zFar);
|
||||
virtual void detachShader(WebGLProgram program, WebGLShader shader);
|
||||
virtual void disable(GLenum cap);
|
||||
virtual void disableVertexAttribArray(GLuint index);
|
||||
virtual void drawArrays(GLenum mode, GLint first, GLsizei count);
|
||||
virtual void drawElements(GLenum mode, GLsizei count, GLenum type, GLintptr offset);
|
||||
virtual void enable(GLenum cap);
|
||||
virtual void enableVertexAttribArray(GLuint index);
|
||||
virtual void finish();
|
||||
virtual void flush();
|
||||
virtual void framebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, WebGLRenderbuffer renderbuffer);
|
||||
virtual void framebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, WebGLTexture texture, GLint level);
|
||||
virtual void frontFace(GLenum mode);
|
||||
virtual void generateMipmap(GLenum target);
|
||||
virtual GLint getAttribLocation(WebGLProgram program,const std::string& name);
|
||||
virtual GLint getBufferParameter(GLenum target, GLenum pname);
|
||||
virtual GLint getParameter(GLenum pname,int fakeID);
|
||||
virtual GLenum getError();
|
||||
virtual GLint getFramebufferAttachmentParameter(GLenum target, GLenum attachment,GLenum pname);
|
||||
virtual GLint getProgramParameter(WebGLProgram program, GLenum pname);
|
||||
virtual std::string getProgramInfoLog(WebGLProgram program);
|
||||
virtual GLint getRenderbufferParameter(GLenum target, GLenum pname);
|
||||
virtual GLint getShaderParameter(WebGLShader shader, GLenum pname);
|
||||
virtual std::string getShaderInfoLog(WebGLShader shader);
|
||||
virtual std::string getShaderSource(WebGLShader shader);
|
||||
virtual GLint getTexParameter(GLenum target, GLenum pname);
|
||||
virtual GLint getUniform(WebGLProgram program, WebGLUniformLocation location);
|
||||
virtual WebGLUniformLocation getUniformLocation(WebGLProgram program, int fakeLoc,const std::string& name);
|
||||
virtual GLint getVertexAttrib(GLuint index, GLenum pname);
|
||||
virtual GLsizeiptr getVertexAttribOffset(GLuint index, GLenum pname);
|
||||
virtual void hint(GLenum target, GLenum mode);
|
||||
virtual GLboolean isBuffer(WebGLBuffer buffer);
|
||||
virtual GLboolean isEnabled(GLenum cap);
|
||||
virtual GLboolean isFramebuffer(WebGLFramebuffer framebuffer);
|
||||
virtual GLboolean isProgram(WebGLProgram program);
|
||||
virtual GLboolean isRenderbuffer(WebGLRenderbuffer renderbuffer);
|
||||
virtual GLboolean isShader(WebGLShader shader);
|
||||
virtual GLboolean isTexture(WebGLTexture texture);
|
||||
virtual void lineWidth(GLfloat width);
|
||||
virtual void linkProgram(WebGLProgram program);
|
||||
virtual void pixelStorei(GLenum pname, GLint param);
|
||||
virtual void polygonOffset(GLfloat factor, GLfloat units);
|
||||
virtual void readPixelsAsync(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, int callbackObjID, int funcID);
|
||||
virtual void renderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
||||
virtual void sampleCoverage(GLclampf value, GLboolean invert);
|
||||
virtual void scissor(GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
virtual void shaderSource(WebGLShader shader, const std::string& source);
|
||||
virtual void stencilFunc(GLenum func, GLint ref, GLuint mask);
|
||||
virtual void stencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
|
||||
virtual void stencilMask(GLuint mask);
|
||||
virtual void stencilMaskSeparate(GLenum face, GLuint mask);
|
||||
virtual void stencilOp(GLenum fail, GLenum zfail, GLenum zpass);
|
||||
virtual void stencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
|
||||
virtual void texImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, void* pixels);
|
||||
virtual void texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels);
|
||||
virtual void texParameterf(GLenum target, GLenum pname, GLfloat param);
|
||||
virtual void texParameteri(GLenum target, GLenum pname, GLint param);
|
||||
virtual void uniform1f(WebGLUniformLocation location, GLfloat x);
|
||||
virtual void uniform1fv(WebGLUniformLocation location, int byteSize, const GLfloat* v );
|
||||
virtual void uniform1i(WebGLUniformLocation location, GLint x);
|
||||
virtual void uniform1iv(WebGLUniformLocation location, int byteSize, const GLint* v );
|
||||
virtual void uniform2f(WebGLUniformLocation location, GLfloat x, GLfloat y);
|
||||
virtual void uniform2fv(WebGLUniformLocation location, int byteSize, const GLfloat* v );
|
||||
virtual void uniform2i(WebGLUniformLocation location, GLint x, GLint y);
|
||||
virtual void uniform2iv(WebGLUniformLocation location, int byteSize, const GLint* v );
|
||||
virtual void uniform3f(WebGLUniformLocation location, GLfloat x, GLfloat y, GLfloat z);
|
||||
virtual void uniform3fv(WebGLUniformLocation location, int byteSize, const GLfloat* v);
|
||||
virtual void uniform3i(WebGLUniformLocation location, GLint x, GLint y, GLint z);
|
||||
virtual void uniform3iv(WebGLUniformLocation location, int byteSize, const GLint* v );
|
||||
virtual void uniform4f(WebGLUniformLocation location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
|
||||
virtual void uniform4fv(WebGLUniformLocation location, int byteSize, const GLfloat* v );
|
||||
virtual void uniform4i(WebGLUniformLocation location, GLint x, GLint y, GLint z, GLint w);
|
||||
virtual void uniform4iv(WebGLUniformLocation location, int byteSize, const GLint* v);
|
||||
virtual void uniformMatrix2fv(WebGLUniformLocation location, int byteSize,GLboolean transpose,GLfloat* value);
|
||||
virtual void uniformMatrix3fv(WebGLUniformLocation location, int byteSize,GLboolean transpose,GLfloat* value);
|
||||
virtual void uniformMatrix4fv(WebGLUniformLocation location, int byteSize, GLboolean transpose,GLfloat* value);
|
||||
virtual void useProgram(WebGLProgram program);
|
||||
virtual void validateProgram(WebGLProgram program);
|
||||
virtual void vertexAttrib1f(GLuint index, GLfloat x);
|
||||
virtual void vertexAttrib1fv(GLuint index, GLfloat* values);
|
||||
virtual void vertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
|
||||
virtual void vertexAttrib2fv(GLuint index, GLfloat* values);
|
||||
virtual void vertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
|
||||
virtual void vertexAttrib3fv(GLuint index, GLfloat* values);
|
||||
virtual void vertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
|
||||
virtual void vertexAttrib4fv(GLuint index, GLfloat* values);
|
||||
virtual void vertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset);
|
||||
virtual void viewport(GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
virtual void readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
|
||||
virtual int createVertexArray(int fakeID);
|
||||
virtual void bindVertexArray(int fakeID);
|
||||
virtual void deleteVertexArray(int fakeID);
|
||||
virtual void vertexAttribDivisor(GLuint index, GLuint divisor);
|
||||
virtual void drawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei primcount);
|
||||
virtual void drawElementsInstanced(GLenum mode, GLsizei count, GLenum type, GLintptr indices, GLsizei primcount);
|
||||
virtual void texImage2DCanvas(GLsizei width, GLsizei height, int canvas);
|
||||
virtual void texStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
|
||||
//------------------------------------------------------------------------------
|
||||
//------------------------------------------------------------------------------
|
||||
virtual void useCommandEncoder(int nCmdSetID);
|
||||
//------------------------------------------------------------------------------
|
||||
//------------------------------------------------------------------------------
|
||||
public:
|
||||
virtual void deleteAllGLRes();
|
||||
virtual void removeTextureFromMap(GLuint texture);
|
||||
virtual void removeFrameBufferFromMap(GLuint frameBuffer);
|
||||
virtual void removeProgramFromMap(GLuint program);
|
||||
virtual void removeShaderFromMap(GLuint shader);
|
||||
virtual void removeRenderBufferFromMap(GLuint renderBuffer);
|
||||
virtual void removeBufferFromMap(GLuint buffer);
|
||||
virtual void removeVAOFromMap(GLuint VAO);
|
||||
public:
|
||||
void _readPixelsAsync(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, int callbackObjID, int funcID);
|
||||
private:
|
||||
void flipY(GLenum format, GLsizei width, GLsizei height, void* pixels);
|
||||
public:
|
||||
static char m_pDummyData[TEX_IMAGE2D_DUMMY_MAX_SIZE];
|
||||
public:
|
||||
JCWebGLPlus* m_pWebGLPlus;
|
||||
JCImageManager* m_pImageManager;
|
||||
JCArrayBufferManager* m_pArrayBufferManager;
|
||||
JCRegister* m_pRegister;
|
||||
protected:
|
||||
GLint m_nMainFrameBuffer;
|
||||
JCIDGenerator* m_pIDGenerator;
|
||||
JCIDGenerator* m_pProgramLocationTable;
|
||||
bool m_bFlipY;
|
||||
public:
|
||||
int m_nCurrentBuffer;
|
||||
int m_nCurrentProgram;
|
||||
static float s_fMainCanvasScaleX;
|
||||
static float s_fMainCanvasScaleY;
|
||||
static float s_fMainCanvasTX;
|
||||
static float s_fMainCanvasTY;
|
||||
int m_nMainCanvasWidth;
|
||||
int m_nMainCanvasHeight;
|
||||
private:
|
||||
std::unordered_map<GLuint, bool> m_vAllTexture;
|
||||
std::unordered_map<GLuint, bool> m_vAllFrameBuffer;;
|
||||
std::unordered_map<GLuint, bool> m_vAllProgram;
|
||||
std::unordered_map<GLuint, bool> m_vAllShader;
|
||||
std::unordered_map<GLuint, bool> m_vAllRenderBuffer;
|
||||
std::unordered_map<GLuint, bool> m_vAllBuffer;
|
||||
std::unordered_map<GLuint, bool> m_vAllVAO;
|
||||
};
|
||||
}
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#endif //__JCLayaGL_H__
|
||||
|
||||
//-----------------------------END FILE--------------------------------
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,400 @@
|
||||
/**
|
||||
@file JCLayaGLDispatch.h
|
||||
@brief
|
||||
@author James
|
||||
@version 1.0
|
||||
@date 2018_5_25
|
||||
*/
|
||||
|
||||
#ifndef __JCLayaGLDispatch_H__
|
||||
#define __JCLayaGLDispatch_H__
|
||||
|
||||
#include <stdlib.h>
|
||||
#include "JCLayaGL.h"
|
||||
#include <buffer/JCCommandEncoderBuffer.h>
|
||||
|
||||
//#define DEBUG_PARSE_STREAM 0
|
||||
|
||||
namespace laya
|
||||
{
|
||||
enum LAYA_FUNCTION_ID
|
||||
{
|
||||
LAYA_UNIFORMMATRIX2FVEX = 0,
|
||||
LAYA_UNIFORMMATRIX3FVEX,
|
||||
LAYA_UNIFORMMATRIX4FVEX,
|
||||
LAYA_ADDSHADERUNIFORM,
|
||||
LAYA_UPLOADSHADERUNIFORMS,
|
||||
LAYA_UPLOADSHADERUNIFORMS_BUFFER,
|
||||
LAYA_USECOMMANDENCODER,
|
||||
LAYA_LOADDATATOREG,
|
||||
LAYA_LOADDATATOREGEX,
|
||||
LAYA_IFLESS0,
|
||||
LAYA_IFEQUAL0,
|
||||
LAYA_IFGREATER0,
|
||||
LAYA_IFLEQUAL0,
|
||||
LAYA_IFGEQUAL0,
|
||||
LAYA_IFGNOTEQUAL0,
|
||||
LAYA_OPERATEREG,
|
||||
LAYA_STORE,
|
||||
LAYA_CREATE_IMAGE_ON_RENDER_THREAD = 64,
|
||||
LAYA_DELETE_IMAGE_ON_RENDER_THREAD,
|
||||
LAYA_RELEASE_IMAGE_ON_RENDER_THREAD,
|
||||
LAYA_SET_IMAGE_RELEASE_SPACE_TIME,
|
||||
LAYA_SET_PREMULTIPLY_ALPHA,
|
||||
LAYA_PERFADDDATA,
|
||||
LAYA_PERFUPDATEDT,
|
||||
LAYA_SET_MAIN_CONTEXT_SIZE,
|
||||
|
||||
//-------------------------------
|
||||
LAYA_GETCONTEXTATTRIBUTES = 128,
|
||||
LAYA_ISCONTEXTLOST,
|
||||
LAYA_GETSUPPORTEDEXTENSIONS,
|
||||
LAYA_GETEXTENSION,
|
||||
LAYA_ACTIVETEXTURE,
|
||||
LAYA_ATTACHSHADER,
|
||||
LAYA_BINDATTRIBLOCATION,
|
||||
LAYA_BINDBUFFER,
|
||||
LAYA_BINDFRAMEBUFFER,
|
||||
LAYA_BINDRENDERBUFFER,//第10个
|
||||
LAYA_BINDTEXTURE,
|
||||
LAYA_USETEXTURE,
|
||||
LAYA_BLENDCOLOR,
|
||||
LAYA_BLENDEQUATION,
|
||||
LAYA_BLENDEQUATIONSEPARATE,
|
||||
LAYA_BLENDFUNC,
|
||||
LAYA_BLENDFUNCSEPARATE,
|
||||
LAYA_BUFFERDATA_SIZE,
|
||||
LAYA_BUFFERDATA_ARRAYBUFFER,
|
||||
LAYA_BUFFERSUBDATA,//第20个
|
||||
LAYA_CHECKFRAMEBUFFERSTATUS,
|
||||
LAYA_CLEAR,
|
||||
LAYA_CLEARCOLOR,
|
||||
LAYA_CLEARDEPTH,
|
||||
LAYA_CLEARSTENCIL,
|
||||
LAYA_COLORMASK,
|
||||
LAYA_COMPILESHADER,
|
||||
LAYA_COPYTEXIMAGE2D,
|
||||
LAYA_COPYTEXSUBIMAGE2D,
|
||||
LAYA_CREATEBUFFER,//第30个
|
||||
LAYA_CREATEFRAMEBUFFER,
|
||||
LAYA_CREATEPROGRAM,
|
||||
LAYA_CREATERENDERBUFFER,
|
||||
LAYA_CREATESHADER,
|
||||
LAYA_CREATETEXTURE,
|
||||
LAYA_CULLFACE,
|
||||
LAYA_DELETEBUFFER,
|
||||
LAYA_DELETEFRAMEBUFFER,
|
||||
LAYA_DELETEPROGRAM,
|
||||
LAYA_DELETERENDERBUFFER,//第40个
|
||||
LAYA_DELETESHADER,
|
||||
LAYA_DELETETEXTURE,
|
||||
LAYA_DEPTHFUNC,
|
||||
LAYA_DEPTHMASK,
|
||||
LAYA_DEPTHRANGE,
|
||||
LAYA_DETACHSHADER,
|
||||
LAYA_DISABLE,
|
||||
LAYA_DISABLEVERTEXATTRIBARRAY,
|
||||
LAYA_DRAWARRAYS,
|
||||
LAYA_DRAWELEMENTS,//第50个
|
||||
LAYA_ENABLE,
|
||||
LAYA_ENABLEVERTEXATTRIBARRAY,
|
||||
LAYA_FINISH,
|
||||
LAYA_FLUSH,
|
||||
LAYA_FRAMEBUFFERRENDERBUFFER,
|
||||
LAYA_FRAMEBUFFERTEXTURE2D,
|
||||
LAYA_FRONTFACE,
|
||||
LAYA_GENERATEMIPMAP,
|
||||
LAYA_GETACTIVEATTRIB,
|
||||
LAYA_GETACTIVEUNIFORM,//第60个
|
||||
LAYA_GETATTRIBLOCATION,
|
||||
LAYA_GETPARAMETER,
|
||||
LAYA_GETBUFFERPARAMETER,
|
||||
LAYA_GETERROR,
|
||||
LAYA_GETFRAMEBUFFERATTACHMENTPARAMETER,
|
||||
LAYA_GETPROGRAMPARAMETER,
|
||||
LAYA_GETPROGRAMINFOLOG,
|
||||
LAYA_GETRENDERBUFFERPARAMETER,
|
||||
LAYA_GETSHADERPRECISIONFORMAT,
|
||||
LAYA_GETSHADERPARAMETER,//第70个
|
||||
LAYA_GETSHADERINFOLOG,
|
||||
LAYA_GETSHADERSOURCE,
|
||||
LAYA_GETTEXPARAMETER,
|
||||
LAYA_GETUNIFORM,
|
||||
LAYA_GETUNIFORMLOCATION,
|
||||
LAYA_GETVERTEXATTRIB,
|
||||
LAYA_GETVERTEXATTRIBOFFSET,
|
||||
LAYA_HINT,
|
||||
LAYA_ISBUFFER,
|
||||
LAYA_ISENABLED,//第80个
|
||||
LAYA_ISFRAMEBUFFER,
|
||||
LAYA_ISPROGRAM,
|
||||
LAYA_ISRENDERBUFFER,
|
||||
LAYA_ISSHADER,
|
||||
LAYA_ISTEXTURE,
|
||||
LAYA_LINEWIDTH,
|
||||
LAYA_LINKPROGRAM,
|
||||
LAYA_PIXELSTOREI,
|
||||
LAYA_POLYGONOFFSET,
|
||||
LAYA_READPIXELS,//第90个
|
||||
LAYA_RENDERBUFFERSTORAGE,
|
||||
LAYA_SAMPLECOVERAGE,
|
||||
LAYA_SCISSOR,
|
||||
LAYA_SHADERSOURCE,
|
||||
LAYA_STENCILFUNC,
|
||||
LAYA_STENCILFUNCSEPARATE,
|
||||
LAYA_STENCILMASK,
|
||||
LAYA_STENCILMASKSEPARATE,
|
||||
LAYA_STENCILOP,
|
||||
LAYA_STENCILOPSEPARATE,//第100个
|
||||
LAYA_TEXIMAGE2D,
|
||||
LAYA_TEXPARAMETERF,
|
||||
LAYA_TEXPARAMETERI,
|
||||
LAYA_TEXSUBIMAGE2D,
|
||||
LAYA_UNIFORM1F,
|
||||
LAYA_UNIFORM1FV,
|
||||
LAYA_UNIFORM1I,
|
||||
LAYA_UNIFORM1IV,
|
||||
LAYA_UNIFORM2F,
|
||||
LAYA_UNIFORM2FV,//第110个
|
||||
LAYA_UNIFORM2I,
|
||||
LAYA_UNIFORM2IV,
|
||||
LAYA_UNIFORM3F,
|
||||
LAYA_UNIFORM3FV,
|
||||
LAYA_UNIFORM3I,
|
||||
LAYA_UNIFORM3IV,
|
||||
LAYA_UNIFORM4F,
|
||||
LAYA_UNIFORM4FV,
|
||||
LAYA_UNIFORM4I,
|
||||
LAYA_UNIFORM4IV,//第120个
|
||||
LAYA_UNIFORMMATRIX2FV,
|
||||
LAYA_UNIFORMMATRIX3FV,
|
||||
LAYA_UNIFORMMATRIX4FV,
|
||||
LAYA_USEPROGRAM,
|
||||
LAYA_VALIDATEPROGRAM,
|
||||
LAYA_VERTEXATTRIB1F,
|
||||
LAYA_VERTEXATTRIB1FV,
|
||||
LAYA_VERTEXATTRIB2F,
|
||||
LAYA_VERTEXATTRIB2FV,
|
||||
LAYA_VERTEXATTRIB3F,//第130个
|
||||
LAYA_VERTEXATTRIB3FV,
|
||||
LAYA_VERTEXATTRIB4F,
|
||||
LAYA_VERTEXATTRIB4FV,
|
||||
LAYA_VERTEXATTRIBPOINTER,
|
||||
LAYA_VIEWPORT,
|
||||
LAYA_CONFIGUREBACKBUFFER,
|
||||
LAYA_COMPRESSEDTEXIMAGE2D,
|
||||
LAYA_TEXIMAGE2D_PIXEL,
|
||||
LAYA_TEXSUBIMAGE2D_PIXEL,
|
||||
LAYA_CREATEVERTEXARRAY,//第140个
|
||||
LAYA_BINDVERTEXARRAY,
|
||||
LAYA_DELETEVERTEXARRAYS,
|
||||
LAYA_READPIXELSASYNC,
|
||||
LAYA_COMPRESSEDTEXSUBIMAGE2D,
|
||||
LAYA_VERTEXATTRIBDIVISOR,
|
||||
LAYA_DRAWARRAYSINSTANCED,
|
||||
LAYA_DRAWELEMENTSINSTANCED,
|
||||
};
|
||||
class JCLayaGLDispatch
|
||||
{
|
||||
public:
|
||||
|
||||
typedef void(*ProcFunction)(JCCommandEncoderBuffer& layaGLCmd);
|
||||
|
||||
static bool dispatchScriptCmd(JCCommandEncoderBuffer& layaGLCmd);
|
||||
|
||||
static void dispatchAllCmds(JCCommandEncoderBuffer* pTemplateMem);
|
||||
|
||||
public:
|
||||
|
||||
static void _layaGL_empty(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getContextAttributes(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_isContextLost(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getSupportedExtensions(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getExtension(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_activeTexture(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_attachShader(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_bindAttribLocation(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_bindBuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_bindFramebuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_bindRenderbuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_bindTexture(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_useTexture(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_blendColor(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_blendEquation(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_blendEquationSeparate(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_blendFunc(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_blendFuncSeparate(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_bufferData_size(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_bufferData_ArrayBuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_bufferSubData(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_checkFramebufferStatus(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_clear(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_clearColor(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_clearDepth(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_clearStencil(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_colorMask(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_compileShader(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_copyTexImage2D(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_copyTexSubImage2D(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_createBuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_createFramebuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_createProgram(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_createRenderbuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_createShader(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_createTexture(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_cullFace(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_deleteBuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_deleteFramebuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_deleteProgram(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_deleteRenderbuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_deleteShader(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_deleteTexture(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_depthFunc(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_depthMask(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_depthRange(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_detachShader(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_disable(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_disableVertexAttribArray(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_drawArrays(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_drawElements(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_enable(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_enableVertexAttribArray(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_finish(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_flush(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_framebufferRenderbuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_framebufferTexture2D(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_frontFace(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_generateMipmap(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getActiveAttrib(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getActiveUniform(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getAttribLocation(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getParameter(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getBufferParameter(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getError(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getFramebufferAttachmentParameter(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getProgramParameter(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getProgramInfoLog(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getRenderbufferParameter(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getShaderPrecisionFormat(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getShaderParameter(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getShaderInfoLog(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getShaderSource(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getTexParameter(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getUniform(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getUniformLocation(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getVertexAttrib(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_getVertexAttribOffset(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_hint(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_isBuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_isEnabled(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_isFramebuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_isProgram(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_isRenderbuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_isShader(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_isTexture(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_lineWidth(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_linkProgram(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_pixelStorei(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_polygonOffset(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_readPixels(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_renderbufferStorage(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_sampleCoverage(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_scissor(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_shaderSource(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_stencilFunc(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_stencilFuncSeparate(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_stencilMask(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_stencilMaskSeparate(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_stencilOp(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_stencilOpSeparate(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_texImage2D(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_texParameterf(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_texParameteri(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_texSubImage2D(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform1f(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform1fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform1i(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform1iv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform2f(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform2fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform2i(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform2iv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform3f(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform3fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform3i(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform3iv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform4f(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform4fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform4i(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniform4iv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniformMatrix2fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniformMatrix3fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniformMatrix4fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_useProgram(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_validateProgram(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttrib1f(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttrib1fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttrib2f(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttrib2fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttrib3f(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttrib3fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttrib4f(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttrib4fv(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttribPointer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_viewport(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_configureBackBuffer(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_compressedTexImage2D(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_texImage2D_pixel(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_texSubImage2D_pixel(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_createVertexArray(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_bindVertexArray(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_deleteVertexArray(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_readPixelsAsync(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_compressedTexSubImage2D(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_vertexAttribDivisor(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_drawArraysInstanced(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_drawElementsInstanced(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_texImage2D_canvas(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_texStorage2D(JCCommandEncoderBuffer& layaGLCmd);
|
||||
//------------------------------------------------------------------------------
|
||||
//-------------------------webgl扩展函数-----------------------------------------
|
||||
//------------------------------------------------------------------------------
|
||||
static void _layaGL_uniformMatrix2fvEx(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniformMatrix3fvEx(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uniformMatrix4fvEx(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_addShaderUniform(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_useCommandEncoder(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uploadShaderUniforms(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_uploadShaderUniformsData(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_loadDataToReg(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_loadDataToRegEx(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_ifLess0(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_ifEqual0(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_ifGreater0(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_ifLEqual0(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_ifGEqual0(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_ifGNotEqual0(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_operateReg(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_store(JCCommandEncoderBuffer& layaGLCmd);
|
||||
//------------------------------------------------------------------------------
|
||||
//-------------------------C++函数-----------------------------------------
|
||||
//------------------------------------------------------------------------------
|
||||
static void _layaGL_createImageOnRenderThread(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_deleteImageOnRenderThread(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_releaseImageOnRenderThread(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_setImageReleaseSpaceTime(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_setPremultiplyAlpha(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_PerfAddData(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_PerfUpdateDt(JCCommandEncoderBuffer& layaGLCmd);
|
||||
static void _layaGL_setMainContextSize(JCCommandEncoderBuffer& layaGLCmd);
|
||||
public:
|
||||
|
||||
static JCLayaGL* ms_pLayaGL; ///<全局的LayaGL
|
||||
};
|
||||
}
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#endif //__JCLayaGLDispatch_H__
|
||||
|
||||
//-----------------------------END FILE--------------------------------
|
||||
Reference in New Issue
Block a user