Commit Graph

179 Commits

Author SHA1 Message Date
Michel Selten
9330e553e8 SCons updates
* libraries are now generated in [BUILD_DIR]/lib
* passed the user_options to all libraries now.
  This means I could remove a couple of Export/Import lines.
* Changed the order in source/blender/src/SConscript and
  source/gameengine/SConscript.
  All libraries are now sorted alphabetically. This has no impact on the build
  process.
2004-02-15 19:25:32 +00:00
Simon Clitherow
6101f0d03d Learning to follow my own advice (I had set the dependancies to csg
already!)
2004-02-11 18:55:31 +00:00
Simon Clitherow
c205e7d1c7 - Added csg.dsp to the main intern workspace (intern.dsw)
- Fixed up the paths for "/lib/..." in csg.dsp

Quick note: Currently intern still builds the old lib (bsplib).

To compile the new lib (when everything is ready for it), uncheck
bsplib from the dependancies in build_install_all and replace with csg.
Will eventually drop bsplib completely - but not just yet :)
2004-02-11 18:36:48 +00:00
Francis Laurence
12966aed05 Ok here is the new CSG library that implements boolean operations for blender through the 'C' api in csg/extern/CSG_Interface.h.
As mentioned earlier on bf-commiters mailing list, there is no current *nix make file only an msvc60 project file. I only have a linux box at work and to be honest I want to avoid doing any commits from there! So if some kind soul could sort it out that would be great.

Dependencies:
This code only depends on other stuff in the intern library, moto and memutils the CSG lib needs to have their include paths to compile. Other than that its completely self contained.

Acknowledgements:
To speed up the polygon-polygon intersection queries I've used some code (under the GPL) from freesolid2.0 this clearly marked in the appropriate files and Gino van den Bergen still owns the copyright to that material. The algorithm I used in based on one from Paul Nettle described on flipcode (www.flipcode.com) and I think his work was a derivative of the "Laidlaw algorithm"

There is also some basic 'ear clipping' triangulation code that unfortunately remains unatributable. I have no right to publish this code under the GPL nor BPL for that matter as I have no idea who the original authors are. Its just one of those random bits of internet code.

Warning!
The stuff used a lot of C++ template features, which on one hand makes it very generic but on the other means that some work will need to be done to get working with other compilters. The msvc60 compiler is not very compliant to the C++ standards with respect to templates so its very difficult to say if this code will compile out of the box on other platforms.

I still haven't committed modifications to booleanops.c in the blender code as without a working library to link to it will break the current build. This needs to be done first!

Improvements
This code is much simpler than the previous bsp implementation see intern/bsp and this old code should be deprectated/removed. However, whilst this implementation produces less triangles in the output than the bps algo, its still not an optimal solution. This is just hard to do and beyond my humble skills.

License:
Just to make it clear this stuff for the reasons mentioned above and for the fact I'm to mean to give the copyright away to BF is licensed under the GPL only.

Cheers,
Laurence.
2004-02-10 20:16:44 +00:00
Nathan Letwory
a66108134c - Added the SConscripts for ftfont and quicktime
- [win32] python_include was missing, there was a double python_libpath. Corrected
- [win32] the soundsystem SConscript broke the win32 build.
2004-01-05 18:17:23 +00:00
Wouter van Heyst
57a7dfe5a5 - Revert to NaN makefiles 2004-01-05 00:06:11 +00:00
Alejandro Conty Estevez
eff07b8329 Basic initial yafray integration by Eeshlo.
Materials are exported the best we can do by now. It will look almost as in
blender except for the missing procedural textures and some minor issues.
You have to tweak normal modulation amount to get the desired result cause
is not the same in yafray.

We added a panel in render space to adjust some yafray settings (GI and so)

Also we export transparency and reflection using new raytracing settings,
but that will be changed and improved soon.

Remember that you have to set YFexport path in user defaults and yafray must
be on path (version 0.0.6)

We added the "yafray" button to activate all this stuff in the render window.
Panel and settings are only shown when checked.

So now when activated the code calls yafray export instead of the internal
renderer and finally the resulting image is loaded back into render window's
buffer. So animation is also possible and results can be saved using blender
usual scheme.
2004-01-04 22:10:36 +00:00
Michel Selten
d3e1fc8870 SCons build system files added.
You'll need SCons (www.scons.org) to build.
Platforms currently working:
* Linux (me)
  - options for quicktime, openal and international disabled
  - uses the system libs and include files for building - no option to build
    with the precompiled libraries yet.
* Windows (jesterKing)
  - builds with quicktime (optional)
  - builds with openal (optional)
  - builds with international support (optional)
  - Use the DOS box to build
  - builds with precompiled libraries
* Irix (Hos)
  - Uses default Irix compiler
  - Not all optimization levels correct yet
  - options for quicktime, openal and international disabled
  - builds with precompiled libraries
* Cygwin (me)
  - has a problem in the linking stage
  - uses free build tools (gcc)
  - options for quicktime, openal and international disabled
  - uses the system libs and include files for building - no option to build
    with the precompiled libraries yet.
* MacOS (sgefant)
  - builds with quicktime (optional)
  - options for openal and international disabled
  - builds a nice bundle
  - builds with precompiled libraries

Thanks to IanWill for a bugfix in the Linux build.
Note: This is a work in progress. A lot still has to be done - for example the
      optional parts are only to be enabled by directly setting 'true' or
      'false' in the SConstruct file. This needs to be moved to a user config
      file. Also, the .o/.obj files are stored in the source tree. This needs
      to be fixed as well.
      The game engine is not yet built.
2004-01-04 21:11:59 +00:00
Daniel Dunbar
7303944ea9 - update VC7 projectfiles 2004-01-02 23:35:21 +00:00
Maarten Gribnau
f351708967 Fixes the freeze on Mac OSX when a Quicktime Settings window for Compression was brought up. Blender swallowed every event, not giving Quicktime a change to receive update events and mouse clicks. 2003-12-31 15:47:09 +00:00
Martin Poirier
50448cdb1a Function without a return (warning)
This function just calls another function which returns a success value, so I'm just passing that value directly as a return value.

Slap me with a trout if I wasn't suppose to fix this.
2003-12-28 20:24:32 +00:00
Robert Wenzlaff
c476658348 More cursor port bugs. 2003-12-26 23:01:47 +00:00
Robert Wenzlaff
3f7cc9b217 Bugfix: Error in cursor port, only showed up under cygwin. 2003-12-26 22:41:51 +00:00
Robert Wenzlaff
85ae21d5dd Commit of cursor framework. Cursors now defined in source/blender/src/cursors.c and
source/blender/include/BIF_cursors.h.  Allows large cursors on Win32 and X11.
See cursors.c for documentatioin on how to use.
2003-12-26 20:12:42 +00:00
Simon Clitherow
8d94f3723d Removed an '#ifndef FREE_WINDOWS' statement that prevented
a gcc/cygwin built Blender from showing the Blender app icon in the
main window title bar.

Only a minor issue, but it annoyed me long enough to want to fix it!
2003-12-12 20:21:35 +00:00
Wouter van Heyst
9b4f87508a The debug target was erroneously removed, put it back.
Fixes build failure reported by ztonzy
2003-11-24 15:42:46 +00:00
Ton Roosendaal
0ff0ac9b87 - another hack!
well... probably OK, got it from a python mailing list.

  When starting from commandline, the window doesnt pop to the front. this
  was really bad for the play function in blender, which opens a new blender
  thread.
  solved with SetFrontProcess()
2003-11-23 23:04:35 +00:00
Michel Selten
ef9bfdcc75 A couple of files I left in the intern/python dir needed to be removed as
well.
To remove the directories on your system, do a:
cvs update -P
2003-11-22 17:29:46 +00:00
Michel Selten
930fc9ee40 First action of removing the old Python API stuff from cvs. Removed the
/intern/python stuff.
To remove the directories on your system, do a:
cvs update -P
2003-11-22 17:28:05 +00:00
Robert Wenzlaff
8dfd33c4fb Improved Knife line drawing, and added Knife cursor. 2003-11-06 00:01:51 +00:00
Robert Wenzlaff
32a03fe460 Changed Knife cursor in windows back to an arrow, since cross is "normal" cursor. 2003-10-27 00:03:18 +00:00
Ton Roosendaal
4d156ec195 - found the bad line in Ghost that preventing closing windows.
I've mailed Maarten to verify it, this commit is for test at other
  OSX platforms.

- this was the baddie:
  setDrawingContextType(GHOST_kDrawingContextTypeNone);
  it was called in the window destructor, for each window closed.
  I've hacked in a temporal global var to store the mainwindow. When this
  line is only called for mainwindow, it all works smoothly.

- next commit is needed too!
2003-10-25 13:25:59 +00:00
Robert Wenzlaff
9b032d6c2a Fixes Makefile for intern/SoundSystem/intern. 2003-10-21 23:27:08 +00:00
Alexander Ewering
5c2005cf06 Robert (DetectiveThorn) Wenzlaff's Knife subdivide tool. See previous
message on Bf-committers for description.
2003-10-12 23:43:26 +00:00
Simon Clitherow
cb667fd282 - removed keymaker project from intern build (MSVC 6) - no longer needed. 2003-10-07 20:59:42 +00:00
Hans Lambermont
1bbf616b59 Finally add spike's FreeBSD suggestions. Tnxto Chris for forwarding. 2003-10-05 19:37:16 +00:00
Michel Selten
357b070120 * Fix bug #390 - auto/gcc compile fails on irix:openal
OpenAL is now a configurable option again. The trick was to update the
  SND_DependKludge not to #define/#undef anything when the auto* tools are
  used.
2003-09-16 19:28:29 +00:00
Kent Mein
abede3ca04 A little more cleanup, removed a bunch of unused vars in the code.
Trying to get rid of some of the extra warnings we can ignore ;)

Kent
2003-08-14 15:18:45 +00:00
Chris Want
d58a5fa269 Added the variable NAN_NO_OPENAL to force building without
openal. Set NAN_NO_OPENAL to true for this behavior.
Also removed a comment about EXPYTHON, which is obsolete.
2003-07-27 17:09:19 +00:00
Simon Clitherow
20ee6b2b66 - updated intern project files to include soundsystem (MSVC 6) 2003-07-20 19:51:03 +00:00
Chris Want
ae512b137c Changed some occurances of the lib 'soundsystem' to 'SoundSystem'
(seems half of the references were one way, the other half were
the other way). Also made irix link to $(OCGDIR)/intern/*SoundSystem/*
instead of $(OCGDIR)/gameengine/*SoundSystem/*
2003-07-17 02:36:56 +00:00
Kent Mein
6dcc5b030e Further fixes to the old makefiles.
Kent
2003-07-16 19:53:53 +00:00
Kent Mein
8dd015e9b0 Hopefully update for NaN Makefiles for the moving of SoundSystem.
I need to get openal working on my machine before I can test it so
if it doesn't work feel free to fix it.  Hopefully this will be
the majority of the stuff though.

Kent
2003-07-16 19:00:04 +00:00
Michel Selten
05cec80893 * Updated the auto* build system to compile again.
SoundSystem has been moved from source/gameengine to intern. This was needed
  because functionality from SoundSystem was needed by
  source/blender/src/editsound.c.
* Removed the option for the openal check in configure.ac. It's needed now by
  SoundSystem
* Removed the functionality for checking if 'noaudio' was provied on the
  commandline. Now audio is default on.
2003-07-16 18:23:50 +00:00
Chris Want
307586f03f EXPYTHON in now the only python for the Makefiles build. 2003-07-12 00:46:43 +00:00
Simon Clitherow
94f8098660 - removed freeze project from intern build (MSVC 6) 2003-07-11 19:34:20 +00:00
Ton Roosendaal
5d118d2b62 * removed warning from Glut "unknown key" when pressing the 'paragraph'
key.
2003-07-10 20:45:17 +00:00
Ton Roosendaal
ad6ddb4689 * cursor now moves with arrow keys again for OSX
* this apple method to do it generates unwanted events, so it could not
  be used for the menu mouse-move trick. this is #ifdeffed
* we should re-evaluate if this mousemove should remain in blender...
  there are better ways (scrolling contents of pup)

* plus: removed warnings from drawview.c
2003-07-10 20:34:41 +00:00
Ton Roosendaal
0a5145c118 * Added a roman -> latin charset convertor.
MacOSX returns a Roman charset with kEventParamKeyMacCharCodes
as defined here: http://developer.apple.com/documentation/mac/Text/Text-516.html
I am not sure how international this works...
For cross-platform convention, we'll use the Latin ascii set instead.
As defined at: http://www.ramsch.org/martin/uni/fmi-hp/iso8859-1.html

* changed window-pop behaviour, it now also activates the window for input
  (OSX only)
2003-07-09 16:01:27 +00:00
Ton Roosendaal
a0430d0d43 Patch provided by Jacques Beaurain (thanks!) to fix bug #322. I've added
the text below as comment:

adding a glFinish() here is to prevent Geforce in 'full scene antialias' mode
from antialising the Blender window. Officially a swapbuffers does a glFinish
itself, so this feels really like a hack... but it won't harm. (ton)
2003-07-05 11:15:49 +00:00
Chris Want
2a1c1fd067 Iconified windows do not get window focus. 2003-07-05 02:28:52 +00:00
Chris Want
14b4ed4e8d Jacques patch for initializing m_context as NULL 2003-07-01 00:53:26 +00:00
Ton Roosendaal
ef4c05bd6c - OSX ghost: hand cursor, and it creates an opengl context with AUX buffer 2003-06-11 15:11:59 +00:00
Kent Mein
3c7c20676e This is a fun one ;)
Removes ssl from blender.
makes the following directorys not needed anymore:
blender/intern/keymaker
blender/source/blender/src/pub
blender/source/blender/encrypt
blender/source/blender/decrypt
blender/source/blender/sign
blender/source/blender/verify

It works with The Nan Makefiles and autoconf, could whoever is working
on the other build systems update them so we can nuke those directorys?
They won't do anything but I figured I'd leave them in for a week or so
to make things easyer on people.

Kent
2003-05-30 15:06:54 +00:00
Chris Want
76dc07b9f6 Support for the experimental python stuff in the traditional
Makefiles (set EXPYTHON=true in user-def.mk).
2003-05-29 16:29:57 +00:00
Rob Haarsma
a9fa245cd6 removed a mousecoords printf message 2003-05-26 11:31:24 +00:00
Ton Roosendaal
8eac463c47 Changed cursor type for moving window edges in OSX into a 'grasping hand'.
For some real idiot reason, osx only has the left-right arrow cursor builtin, and not an up-down arrowed one. The little hand cursor seems to be used in other apps, so let's stick with that!

-Ton-
2003-05-25 12:51:43 +00:00
Chris Want
fcad2744d7 Some tweaks to make the windows-gcc play nice with irix. 2003-05-25 05:22:46 +00:00
Chris Want
924a849755 Support for building bf-blender under windows with gcc (huge thanks to
Florian Eggenburger).

Full instructions are in doc/README.windows-gcc.

Main differences from Florian's patch:

- the 'lib' dir should now be the same level as the 'blender' dir (rather
than being a subdir of 'blender'). This is consistent with the other
platforms that bf-blender supports (tuhopuu will also adopt this convention
hopefully soon).

- the script 'free_windows-env.mk' is no longer needed ... see the
docs about how this is overcome (again, tuhopuu will hopefully
also follow this route soon).

- the dlltool dir has it's own Makefile that builds all of the
needed stub libraries from the dll's in cvs.
2003-05-24 20:04:37 +00:00
Kent Mein
64f0bdd954 Moved the misc txt files into the doc dir...
I wasn't sure maybe the two license files should be put in the root dir
instead....

I also reformated the bf-members.txt file a little to nuke extra spaces and
newlines (as well as updated my entry to include my name instead of just
sirdude... It looks like there are some special chars in it that someone
should fixup, not sure what they are suppose to be though)

Kent
2003-05-21 18:59:42 +00:00