⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changelog

📁 小型游戏引擎
💻
📖 第 1 页 / 共 3 页
字号:
05192001 - Demands SDL_HWPALETTE, which seems to fix 8bit color targets. Added            other debugging info to sdl_driver.c, and put the (commented out)            starts of hardware surface/double buffering/page flipping support.            Updated TODO.05222001 - Updated TODO again. Cleaned up engine.c's forward function            references. Put together engine.h, so that the engine's exported            functionality can be referenced via one header instead of a list            of function declarations plugged into every file. Made everything            that shouldn't be exported from engine.c static, but this is an            error-prone process, so it'll probably get tweaked as other Build            related code gets tried with this engine. Similar cleanups in            build.c, display.h, and elsewhere. Laid foundation for an OpenGL            renderer. No actual rendering is done, just context creation and            library setup when _setgamemode() is called on a system that uses            the SDL driver. This work may never get finished, but why not try?            Flip the "useopengl" flag in the Makefile to use this code.            Cleaned out a commented-out printf in maskwallscan(). Moved            New static flag in engine.c: initengine_called is set when            (surprise) initengine() is called. This is currently just used            with the MMX overlay code...now dommxoverlay is no longer exposed;            use setmmxoverlay() and getmmxoverlay() instead. Updated            build2.txt with this information. Removed global var: cachedebug            in engine.c, and put #define BUILD_CACHEDEBUG 0 at the top of the            source. Flip it to 1 if you ever need to tinker in the cache code.            Removed krecip() from engine.c, since nothing uses it (it just            wrapped krecipasm(), which IS used all over the place).            Other cleanups were made, along with update in build.txt. Lots of            code was touched in ways not appropriate to mention in polite            company.05232001 - Added lookup.dat support code, thanks to TerminX's help. Changed            initgroupfile() to not exit() if the groupfile won't open().            instead, we check for failed return values in ExtInit() (bstub.c),            like we should have done from the start. Added check in ExtInit()            for the environment variable BUILD_GROUPFILE, which will be the            groupfile to open if the variable exists. If the variable isn't            set, we default to Ken's "stuff.dat". Between this and TerminX's            lookup.dat code, we should be able to wander around a Duke3D map            without segfaults all over the place. Changed initgroupfile() and            kopen4load() to take a (const char *) argument. Should probably            show some diligence in adding this elsewhere, too, for the sake            of cleanliness and bughunting. Added some more function            declarations to engine.h. Updated README with new info on            Mapster and Duke3D.05262001 - Finally unearthed a copy of Watcom 11.0! Fixed up all the GNU            inline asm so that the Watcom preprocessor wouldn't puke on it,            and built new win32 binaries...apparently Watcom 11, unlike 10.6,            can make a PE header that WinNT and Win2000 will accept. Moved the            Win32 version up to SDL 1.2.0 from SDL-1.1.8, and added a Watcom            __cdecl pragma in display.h for SDL_VideoDriverName(). Updated            TODO.05272001 - Added engine.h to dos_drvr.c to get the DOS binaries to compile.            Added README and CHANGELOG to the win32 and dos bin distros, and            updated README-dosbins.txt and README-win32bins.txt. Updated            README with info on Watcom 10 vs 11, porting to new OSes, etc.            Updated TODO, AGAIN. :) Wrote a hopefully-robust function that            toggles the screen surface between windowed and full screen            without using SDL_WM_ToggleFullScreen(), so that you can use            ALT-Enter on Win32. Accordingly, removed references to            SDL_WM_ToggleFullScreen() in display.h and sdl_driver.c ...            The new fullscreen toggle code throws up on Windows if you destroy            the window (via SDL_SetVideoMode()) while in the middle of            handling one of its events...we were processing all events via the            SDL event filter during the SDL_PumpEvents() call. I've added            handle_events() to sdl_driver.c, and replaced all the PumpEvents            calls with that. This gets its events via SDL_PollEvent(), and            passes them on to our filter manually. That's just generally better            practice anyhow. Put hardcoded environment variables in            sdl_driver.c into constants. Hall of mirror debugging, and all the            BUILDSDL output to stderr is now all compiled in, and trigged by            the existence of the BUILD_SDLDEBUG environment variable. Build            now always claims to have standard resolutions (up to the largest            your system claims to handle) available, and SDL will fake it if            they aren't there. This should fix the Win32 F4 problem, and            people without other modelines listed in their XF86Config. Also,            by setting the environment variable BUILD_SCREENRES, you can add            one window of any dimension to the list. For example,            "export BUILD_SCREENRES=666x666".05282001 - Added a maximum screen resolution of 1600x1200. This can be raised            or lowered with an environment variable: export            BUILD_MAXSCREENRES=1024x768, if you like. Renamed            BUILD_NO_MOUSE_GRAB to BUILD_NOMOUSEGRAB for consistency. Renamed            BUILD_SCREENRES to BUILD_USERSCREENRES. Rewrote the spaghetti that            all this resolution management code had quickly become. The fight            with attempt_fullscreen_toggle() continues: gave up, and just            called setbrightness() to fix the palettes. Now tries to use            SDL_WM_ToggleFullscreen() first before doing it The Hard Way, and            just returns if there's no window manager reported by            SDL_GetVideoInfo->wm_available. All the debugging output (of which            there is still more added today) has been cleaned up and is            passed through a function called sdldebug() that is used like            fprintf(stderr), but adds the "BUILDSDL: " string to the front,            a newline to the end, and prints nothing if debugging is disabled.            TODO is, as usual, expanding. Added BUILD_HALLOFMIRRORS environment            var, so that it isn't bound to BUILD_SDLDEBUG anymore. The            BUILD_SDLDEBUG variable now needs a value: the file to write debug            information to. The value can be "-" to write to stdout. This is            for that obnoxious win32 platform.  :)05292001 - Added a hack for Windows systems using the "windib" driver.            Apparently windib has no way to distinguish between the return key            and the keypad enter, and they both come up as the former. Now, if            you hold down SHIFT while hitting either return or the keypad            enter, sdl_driver.c reports to the engine that the keypad enter            was pressed. Now I can get into 3D mode on WinNT 4.0.  :)05302001 - More toggle_fulscreen work. Check to see if the debug output file            was opened, and printf() a warning if not. setbuf(..., NULL) was            no longer called on stderr and stdout in sdl_driver.c's version            of _platform_init(), but the buffer is set to NULL for the debug            file now, which may or may not be stdout. Just for a goof, I added            vmWare virtual machine detection code, which returns false in the            portable C version, and does some lowlevel voodoo in i386 asm.06012001 - Added sdldebug() output to list the version of SDL we compiled            against, and the version we are linked (dynamically) against.06082001 - It's Neurotic Cleanup Day! Started putting support for compiling            with Visual C in place, and found how anal their anal settings            can be (does this beat -ansi -pendantic on Linux? Probably not.).            Converted all the "//" comments to "/*" (ugh), and added explicit            casting where needed. Replaced references to "long long" with            "__int64", which is #defined appropriately in the compat headers.            Now compiling the codebase with -ansi and -pendantic on Linux and            Cygwin. Changed PORTSIG in build.h. Moved the sound stubs out of            sdl_driver.c and into a #ifndef PLATFORM_DOS block in game.c; it's            KenBuild-specific, and I'm not interested in implementing it            cleanly, or at all, for non-DOS platforms. Cleaned up rest of            the forward references in game.c and build.c. Cleaned up the            OpenGL debugging output (it's now unified with the sdldebug()            code). Renamed a_linux.asm to a_nasm.asm, since it's used on Linux            and Windows (and probably everywhere else that there's an x86            system that isn't using Watcom). Implemented stricmp() on unix            (damned -ansi flag). Updated TODO and README. Changed the display            driver function _initkeys into initkeys. This will force a link            error in Build games, so they can be updated to call the driver's            init function; updated this in build.txt, too.06122001 - Made mmulti.c compile with -ansi and -pedantic, as that might be            needed later. Testing the OpenGL waters again. Added string_dupe()            to replace strdup(), and changed a snprintf() call to sprintf() in            sdl_driver.c, so I could remove the _GNU_SOURCE define.06132001 - Changed Unix makefile, so that you can (by setting usedlls=true)            compile buildengine.so and buildnet.so, and the game and build            binaries only statically link what is absolutely necessary. Setting            usedlls=false statically links all the Build code together,            although currently external libraries like SDL are still            linked dynamically. Platform drivers now need to store _argv and            _argc. Commented a few functions in engine.c as I start to grok            what each bit of code does.06232001 - Cleaned up some whitespace issues in pragmas.c. The one SDL            dependency in engine.c has been abstracted into            _updateScreenRect() and implemented in the display drivers.            OpenGL should now always be compiled in unless you can't even            build it (and thus, I've officially flipped useopengl to "true"            in the Makefile). You can now choose your renderer at runtime by            setting the BUILD_RENDERER environment variable: Set it to            "software" for the usual drill, "opengl2d" for using OpenGL to            move the software-rendered framebuffer to the screen (got this            idea from zsnes. cool.), and "opengl3d" to try to render an actual            3D scene in OpenGL. Default is "software". The 3D stuff hasn't            even been started, since it'll need an actual implementation in            engine.c. The gl2D stuff is an hour's work. After the 3D            implementation is in there, I'll be adding Makefile flags and code            #ifdefs to prevent compilation of the software renderer, which            will end the need for most, if not all, of the assembly, and get            us running on different platforms. I know, easier said than done.            Other little cleanups and enhancements.06242001 - Followed through on my threat, and split off most of the OpenGL            code into buildgl.c.  :) Added more GL func pointers, and tried            (failingly) to get OpenGL2D more working. It's way too slow;            I guess all that conversion from 8-bit, through the lookup tables,            to 32-bit, back to whatever the screen depth is, etc is expensive.            Looks like it's just software rendering and full 3D. Sigh.            More SDL cleanups. (committed on Aug 1st).07082001 - Implemented support for PhysicsFS in cache1d.c; this allows you to            replace your GRP file with a compressed ZIP file. This is optional,            since it's an extra dependency. PhysicsFS is another one of my            projects, and information and source for it can be found at:            http://www.icculus.org/physfs/   ... (committed on Aug 1st).07162001 - Moved CVS repository to icculus.org. Updated README.08012001 - Committed some stuff, fixed a bug in the PhysicsFS code. Flipped            the useopengl flag in the Makefile back to false for now. Added            PhysicsFS info to README. Changed all occurances of my email            address from linuxgames.com to clutteredmind.org.--ryan. (icculus@clutteredmind.org)/* end of CHANGELOG ... */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -