mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-02-18 09:51:40 +00:00
[model] Move Mod_CalcFullbright to its own file
This allows it to be shared between renderers.
This commit is contained in:
parent
7a353d5aee
commit
ba5e86d927
3 changed files with 56 additions and 19 deletions
|
@ -12,7 +12,13 @@ EXTRA_LTLIBRARIES += \
|
||||||
libs/models/libmodels_sw.la \
|
libs/models/libmodels_sw.la \
|
||||||
libs/models/libmodels_vulkan.la
|
libs/models/libmodels_vulkan.la
|
||||||
|
|
||||||
models_sources = libs/models/clip_hull.c libs/models/model.c libs/models/portal.c libs/models/trace.c libs/models/winding.c
|
models_sources = \
|
||||||
|
libs/models/clip_hull.c \
|
||||||
|
libs/models/fullbright.c \
|
||||||
|
libs/models/model.c \
|
||||||
|
libs/models/portal.c \
|
||||||
|
libs/models/trace.c \
|
||||||
|
libs/models/winding.c
|
||||||
|
|
||||||
common_libs = \
|
common_libs = \
|
||||||
libs/util/libQFutil.la
|
libs/util/libQFutil.la
|
||||||
|
|
49
libs/models/fullbright.c
Normal file
49
libs/models/fullbright.c
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
fullbright.c
|
||||||
|
|
||||||
|
fullbright skin handling
|
||||||
|
|
||||||
|
Copyright (C) 1996-1997 Id Software, Inc.
|
||||||
|
|
||||||
|
This program is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU General Public License
|
||||||
|
as published by the Free Software Foundation; either version 2
|
||||||
|
of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
|
||||||
|
See the GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to:
|
||||||
|
|
||||||
|
Free Software Foundation, Inc.
|
||||||
|
59 Temple Place - Suite 330
|
||||||
|
Boston, MA 02111-1307, USA
|
||||||
|
|
||||||
|
*/
|
||||||
|
// models are the only shared resource between a client and server running
|
||||||
|
// on the same machine.
|
||||||
|
|
||||||
|
#ifdef HAVE_CONFIG_H
|
||||||
|
# include "config.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include "r_local.h"
|
||||||
|
|
||||||
|
|
||||||
|
VISIBLE int
|
||||||
|
Mod_CalcFullbright (byte *in, byte *out, int pixels)
|
||||||
|
{
|
||||||
|
byte fb = 0;
|
||||||
|
|
||||||
|
while (pixels--) {
|
||||||
|
byte pix = *in++;
|
||||||
|
byte mask = (pix >= 256 - 32) - 1;
|
||||||
|
fb |= mask + 1;
|
||||||
|
*out++ = pix | mask;
|
||||||
|
}
|
||||||
|
return fb;
|
||||||
|
}
|
|
@ -40,24 +40,6 @@
|
||||||
|
|
||||||
#include "r_local.h"
|
#include "r_local.h"
|
||||||
|
|
||||||
|
|
||||||
VISIBLE int
|
|
||||||
Mod_CalcFullbright (byte *in, byte *out, int pixels)
|
|
||||||
{
|
|
||||||
int fb = 0;
|
|
||||||
|
|
||||||
while (pixels--) {
|
|
||||||
if (*in >= 256 - 32) {
|
|
||||||
fb = 1;
|
|
||||||
*out++ = *in++;
|
|
||||||
} else {
|
|
||||||
*out++ = 255;
|
|
||||||
in++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return fb;
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
Mod_Fullbright (byte *skin, int width, int height, const char *name)
|
Mod_Fullbright (byte *skin, int width, int height, const char *name)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue