Short: PPC!!! New 3D modular library for games. Author: ingpippa@mbservice.it Pyper Uploader: ingpippa mbservice it Pyper Type: dev/misc Architecture: m68k-amigaos Hey! Visit Wild's NEW Home page at: Please, I'd like to know if this piece of code hangs on different systems: particullary, I'd like to know with "strange" combinations, like PPC+GFXBoards, PPC+Warp3D,PPC+CyberGFX,... (note: Warp3D is NOT supported natively on PPC: I have 2 amigas, one have GFXBoard, other have PPC: can't test the code for W3D+PPC... if someone wants the source to try to compile on PPC, i'll give...) 17/2/99 Yeah, big update !!! PowerPC support !!! Now anything (any module) in wild's pipeline can be 68k or PPC coded and it's absolutely the same !! I've also written a fully PPC pipeline, but note that is not extremely fast (ok, all demos are smooooooooth, and even decent in hires, but the one with a looot of polys is a bit slow... BUT: consider i HAVEN'T reached my speed limit on ppc (ABSOLUTALY NOT!) infact all is coded in C, and even not so optimized... I'm learning ppc asm, if I find out something good to debug a bit I'll do better... I've even a lot of algo optims to make, like not to recalc things on every frame if they don't modify, ... ...). There are even some context-switches, because demos are still 68k... Expect something better not so remotely... Another feature: the animation engine is now even with rotations, (and have even been 100% rewritten, but that's another story...), you'll see in the new demo (and even in FountainOfFire...) One more feature: new fileformat: WSFF !!! Binary-based, MUCH faster than WABL, wich is text-based, expecially in loading: something like 5-10 secs for 1MB long file, where WABL needed 5-10 minutes... (argh!). It's even smaller, but not so much (but next time will support xpk, so compression available). Ah, the PPC pipeline (written in C) is also available for 68k, so if you have problems with the old one (asm-written, fffast but sometimes buggy...) you can replace some modules... More: lots of fixings... lighting is better, now, and even broker bugs... and more I can't remember... see it ! More ? A new web page, with niicer gfx, and something new... 18/2/99 PLEASE!!! Send me your opinions !!! I need to know if somebody likes that piece of code !! If, I may do some improooooooooovements, like faaaaaaster moduler for AGA, PPC support (I have a ppc board, but I WON'T start coding for PPC if NOBODY will use that !!) Thanksss! 18/2/99 New feature !!! The Animation !!!!! Timed, relative, you just have to give some commands and any object will do the action you want !! Just for now, the animation is only traslational, so no automatic rotation, but that's already planned, probably you'll see veery soon in a new release. Now, give a try to my new FountainOfFire demo, wich shows a very simple movement (a falling, with a Speed to down, and an Acceleration to Up) of Drops, so you will see for the first time a lot of objects on screen... enjoy! 10/2/99 Some improvements in the DrScott module (the Warp3D one), so now it has the grey light like the others. Note, it's Warp3D1.1 compatible, but on Warp3D2.0Beta crashes (on my system) or does strange things. Maybe on a CGX4 and Permedia2 system is moe stable, but on CV3D version 1.1 is better, I think... (and also W3D authors said, somewhere...) Please, if you have a Permedia2 board, report-me something !! More improvements: some tools made public, and fixed a bit; Particullary, Dxf2Wabl is a bit better now, but still needs some handly made things to the output WABL files to be seen: Ref definitions and more. The Saver module !!!! A new kind of module, wich Saves the current Scene (or an alien, an everything) into a file (WABL, now). A demo shows that, the LoadSave: you can input the simple.wabl of SimpleWorld and output somewhere. NOTE: It's NOT FULLY WORKING, STILL !! Lacks Texture & Palette save, and some little hand corrections are needed to have the output file work as the input. But you will see a WABL new file. 25/1/99 First, I have an homepage ! Here, you can see the developement of wild, and the updates, and the whatelse will come in my mind. Wild improvements: some bug and hangs fixed in display. New display modules for CGFX, no more bad flashings, I used ScrollVPort method and now I have a smooth triple buffering. A cli-based program to set prefs, in Tools/ drawer. You can use direclty, or use the scripts in every demo's dir. A cli-based program to check if a module is Polite. Please, if you have some hangs, try this and report-me something. And the BIG new: DrScott module, the first featuring Warp3D support ! Ok, still lacks something, and is a bit buggy (a $0100000F alert after execution, is a memcorrupt alert. But I saw the system goes on well, probably is some mem lost somewhere), and also probably keeps some video mem and after some executions hangs. But is just the beginning. Note: now has no Lighting, because I want a GOOD lighting module for that before activating it. It's not a missing feature, is a disabled one. (note more: if you get only a hang, try to execute the demo programs first in the normal CGFX mode, then in the WARP3D mode). 15/1/99 A lot of fixing from last release, wich were very incomplete and buggy. That's more stable, and has new fondamental functions: in the new demos objects are now hakkfully included in the exe like in the old ones: are builded with BuildWildObject() or loaded from a file with LoadWildObject(). More: textures are loaded from 24bit chunky files and remapped FFASTLY into the scene's palette. The GFX aspect of the library is the same, because I didn't worked on: I mad more to do. Next release will feature a better GFX, I hope... first: WILD is a new library to make life easyer to 3D games creators: it's a complete 3D engine, really modular (so machine-adaptive, and you can also write your own modules) and quite fast (my modules are all written in 100% assembly). What about features ? - 3D engine features: - BSP System, with Face entities or Dot entities (2d bitmaps,lens flares,...) - A cynematic-like system: ALL the objects are defined by parts,subparts (you can define any number and any depth of childs of an object!). Every part is defined by you with a 3D orthogonal axis system, with an O,I,J,K, defined RELATIVELY to the parent object. Pratically: you can define a finger, child of a hand, child or a arm, child of a body (child of ??? WHAT MONSTER !!??) and when you move or rotate the body, the arm and the hand move transparently. You can move everything relatively or absolutely too. See Cynematic demos to see that. - In a scene you can have a lot of lights, and some drawmodules will feature also colorful lights. - GFX engine: - the current modules (but more will come soon) feature: - flat or gouraud shading illumination (lights calced in angular & distance mode). - texture mapping (linear, now). - support for CGFX. - NEARLY FUTURE FEATURES: - color lights. (i have a method, very fast, but no time now to code (sorry, soon!!)) - better&faster modules (these are quite alpha...) - some fileformats for levels, and a Loader module (you will see in this archive some first developements of WABL format, a quite simple ASCII format (but POWERFUL)). - prefs editor: the library is now ok, but the editor is still beta. - the engineer system, quite beta now: checks the compatibility of the engine (now is not checked) and will auto-repair it, in a quite near future. - FUTURE FEATURES (if somebody will use that lib...) - PPC support, when (and if) i will get a PPC card (or a PPC Boxer). (not so far !) - better gfx, better everything. - i'm projecting the Animation part, with Actions: you will say to your little man: "Walk" and he will walk,"Kick", and will Kick,"Open your hand", and will do. Or, shot a bullet, and the bullet will go, until it's gravity makes him fall. Q: Why did you started writing WILD !? A: Wild is thinked to make life easyer to game-developers: in the future, it will probably support even 3d cards (cybervision64/3d,bvision, (3dfx !?)). So, when you make a game, you only have to concentrate in the playability, and in the design of levels. The 3D engine will be provided by WILD, and you will be sure your game will run on virtually any Amiga, even future Amigas. Q: But my 3D engine is BETTER THAN YOURS !! A: Probably that's true. (now, that's SURE!! (just now!)) And so why don't you write is as a WILD module and distribute it ? (You can even write it and distribute only with you game, or make it PD). Q: Why are you still writing all this useless Q&A when you just have a bunch of crappy code !? GO AND WORKkK!! A: Ehm... .. . ! (GAME-)DEVELOPERS!! If you want to help me (writing a module, or more), e-mail me !!! I'll give you everything you need! For game writing, you should wait for a more stable release, with will come (i hope) soon. About this archive: REMEMBER: Assign WildPJ: before using the demos: some need that. Libs/ : Contains the wild.library (the master library) and all the sublibs. You have to add this directory to the LIBS: assign, just do: Assign LIBS: /Libs/ ADD Demos/ : Contains some demos of my library. See the Cynetic ones, there is a quite nice object (but you will also see my too-early bsp tree (wich now adds objects as dots, and not face by face, but i'll add very soon)). 1,2,3 are only sub-variants. Images/ : Some images of the Wild logo. Prefs/ : A preview of the wild prefs editor, now does nearly nothing. TRY IT, AND E-MAIL ME, EVEN JUST TO SAY IT'S RUBBISH, BUT I WANT TO KNOW!! Thanks! Pyper.