mirror of
https://github.com/scp-fs2open/fs2open.github.com.git
synced 2026-11-07 22:56:30 -10:00
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11303 387891d4-d844-0410-90c0-e4c51a9137d3
55 lines
1.2 KiB
C++
55 lines
1.2 KiB
C++
/*
|
|
* Copyright (C) Volition, Inc. 1999. All rights reserved.
|
|
*
|
|
* All source code herein is the property of Volition, Inc. You may not sell
|
|
* or otherwise commercially exploit the source or things you created based on the
|
|
* source.
|
|
*
|
|
*/
|
|
|
|
/**
|
|
* @file bm_examples.cpp
|
|
* This file contains example code for using bmpman.
|
|
*/
|
|
|
|
#include "bmpman/bmpman.h"
|
|
#include "graphics/2d.h"
|
|
|
|
void bm_create_example() {
|
|
static int test_inited = 0;
|
|
static int test_bmp;
|
|
static uint test_bmp_data[128 * 64];
|
|
|
|
if (!test_inited) {
|
|
test_inited = 1;
|
|
// Create the new bitmap and fill in its data.
|
|
// When you're done with it completely, call
|
|
// bm_release to free up the bitmap handle
|
|
test_bmp = bm_create(32, 128, 64, test_bmp_data);
|
|
int i, j;
|
|
for (i = 0; i < 64; i++) {
|
|
for (j = 0; j < 64; j++) {
|
|
uint r = i * 4;
|
|
test_bmp_data[j + i * 128] = r;
|
|
}
|
|
}
|
|
}
|
|
|
|
// page out the data, so that the next bm_lock will convert the new data to
|
|
// the correct bpp
|
|
bm_unload(test_bmp);
|
|
|
|
// put in new data
|
|
int x, y;
|
|
gr_reset_clip();
|
|
for (y = 0; y < 64; y++) {
|
|
for (x = 0; x < 128; x++) {
|
|
test_bmp_data[y * 128 + x] = 15;
|
|
}
|
|
}
|
|
|
|
// Draw the bitmap, the upper left corner is the origin (0, 0)
|
|
gr_set_bitmap(test_bmp);
|
|
gr_bitmap(0, 0);
|
|
}
|