source: trunk/packages/vizservers/nanovis/NvShader.cpp @ 1331

Last change on this file since 1331 was 1299, checked in by vrinside, 15 years ago

modified lic

File size: 879 bytes
Line 
1#include <stdio.h>
2#include "global.h"
3#include "NvShader.h"
4
5CGcontext g_context = 0;
6
7void NvInitCG()
8{
9    g_context = cgCreateContext();
10}
11
12NvShader::NvShader()
13
14: _cgVP(0), _cgFP(0)
15{
16}
17
18NvShader::~NvShader()
19{
20}
21
22void NvShader::loadVertexProgram(const char* fileName, const char* entryPoint)
23{
24    resetPrograms();
25
26    _cgFP = LoadCgSourceProgram(g_context, fileName, CG_PROFILE_VP30, entryPoint);
27}
28
29void NvShader::loadFragmentProgram(const char* fileName, const char* entryPoint)
30{
31    _cgFP = LoadCgSourceProgram(g_context, fileName, CG_PROFILE_FP30, entryPoint);
32}
33
34void NvShader::resetPrograms()
35{
36    if (_cgVP != 0)
37    {
38        cgDestroyProgram(_cgVP);
39    }
40
41    if (_cgFP != 0)
42    {
43        cgDestroyProgram(_cgFP);
44    }
45}
46
47void NvShader::setErrorCallback(NvCgCallbackFunction callback)
48{
49        printf("NvShader callback\n");
50    cgSetErrorCallback(callback);
51}
52
53
Note: See TracBrowser for help on using the repository browser.