static void Render(int frameNumber) { RaycastCalculateView(frameNumber); PROFILE(RaycastTunnel) RaycastTunnel(smallMap, CameraView.Transformed); PROFILE (UVMapScale8x) UVMapScale8x(uvmap, smallMap); UVMapSetTexture(uvmap, texture); UVMapSetOffset(uvmap, 0, frameNumber); PROFILE (UVMapRender) UVMapRender(uvmap, canvas); PROFILE (RenderShadeMap) RenderShadeMap(shades, uvmap->map.normal.v); PixBufSetColorMap(shades, colorMap); PixBufSetBlitMode(shades, BLIT_COLOR_MAP); PROFILE (BlitShadeMap) PixBufBlit(canvas, 0, 0, shades, NULL); PROFILE (ChunkyToPlanar) c2p1x1_8_c5_bm(canvas->data, GetCurrentBitMap(), WIDTH, HEIGHT, 0, 0); }
static void Init() { float lightRadius = 1.0f; int i; canvas = NewPixBuf(PIXBUF_CLUT, WIDTH, HEIGHT); PixBufClear(canvas); uvmap = NewUVMap(WIDTH, HEIGHT, UV_FAST, 256, 256); UVMapGenerateTunnel(uvmap, 32.0f, 3, 4.0 / 3.0, 0.5, 0.5, NULL); UVMapSetTexture(uvmap, texture); flare = NewPixBuf(PIXBUF_GRAY, 64, 64); GeneratePixels(flare, (GenPixelFuncT)LightLinearFalloff, &lightRadius); for (i = 0; i < flare->width * flare->height; i++) flare->data[i] /= 4; origU = NewPixBuf(PIXBUF_GRAY, WIDTH, HEIGHT); PixBufBlit(origU, 0, 0, NewPixBufWrapper(WIDTH, HEIGHT, uvmap->map.fast.u), NULL); origV = NewPixBuf(PIXBUF_GRAY, WIDTH, HEIGHT); PixBufBlit(origV, 0, 0, NewPixBufWrapper(WIDTH, HEIGHT, uvmap->map.fast.v), NULL); InitDisplay(WIDTH, HEIGHT, DEPTH); LoadPalette(texturePal); }
static void ChangeMap(int newMap) { while (newMap < 0) newMap += maps; newMap = newMap % maps; if (newMap != lastMap) { generate[newMap](uvmap); UVMapSetTexture(uvmap, texture); lastMap = newMap; } }
static void Init() { canvas = NewPixBuf(PIXBUF_CLUT, WIDTH, HEIGHT); PixBufClear(canvas); uvmap = NewUVMap(WIDTH, HEIGHT, UV_NORMAL, 256, 256); UVMapSetTexture(uvmap, texture); shades = NewPixBuf(PIXBUF_GRAY, WIDTH, HEIGHT); smallMap = NewUVMap(H_RAYS, V_RAYS, UV_ACCURATE, 256, 256); lightFunc = CalculateLightFunc(); LoadPalette(texturePal); InitDisplay(WIDTH, HEIGHT, DEPTH); }
/* * Set up effect function. */ void SetupEffect() { UVMapT *uvmap = R_("Map"); PixBufT *shades = R_("Shades"); LoadPalette(R_("TexturePal")); UVMapGenerate4(uvmap); UVMapSetTexture(uvmap, R_("Texture")); uvmap->lightMap = shades; PixBufSetColorMap(shades, R_("ColorMap")); ResAdd("Component", NewPixBufWrapper(WIDTH, HEIGHT, uvmap->map.fast.u)); StartProfiling(); }
static void Init() { canvas = NewPixBuf(PIXBUF_CLUT, WIDTH, HEIGHT); shades = NewPixBuf(PIXBUF_GRAY, WIDTH, HEIGHT); PixBufSetColorMap(shades, colorMap); uvmap = NewUVMap(WIDTH, HEIGHT, UV_FAST, 256, 256); uvmap->lightMap = shades; UVMapGenerate4(uvmap); UVMapSetTexture(uvmap, texture); component = NewPixBufWrapper(WIDTH, HEIGHT, uvmap->map.fast.u); colorFunc = NewTable(uint8_t, 256); InitDisplay(WIDTH, HEIGHT, DEPTH); LoadPalette(texturePal); }
static void Init() { canvas = NewPixBuf(PIXBUF_CLUT, WIDTH, HEIGHT); uvmap = NewUVMap(WIDTH, HEIGHT, UV_FAST, 256, 256); UVMapGenerate2(uvmap); UVMapSetTexture(uvmap, texture); orig = NewPixBuf(PIXBUF_GRAY, WIDTH, HEIGHT); PixBufBlit(orig, 0, 0, NewPixBufWrapper(WIDTH, HEIGHT, uvmap->map.fast.u), NULL); scene = NewScene(); SceneAddObject(scene, NewSceneObject("Object", mesh)); shades = NewPixBuf(PIXBUF_GRAY, WIDTH, HEIGHT); InitDisplay(WIDTH, HEIGHT, DEPTH); LoadPalette(texturePal); }