Bläddra i källkod

- update README and INSTALL, slight doc fixes.

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1050 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
aramis_acg 14 år sedan
förälder
incheckning
5f341dcf00
4 ändrade filer med 141 tillägg och 132 borttagningar
  1. 23 34
      INSTALL
  2. 83 43
      README
  3. BIN
      doc/AssimpDoc_Html/AssimpDoc.chm
  4. 35 55
      doc/dox.h

+ 23 - 34
INSTALL

@@ -1,12 +1,12 @@
 	
 	
+========================================================================
+Open Asset Import Library (assimp) INSTALL 
+========================================================================
 
 
-Open Asset Import Library (Assimp) Install
-------------------------------------------------
 
 
-
-=======================================================================
-Please refer to the doxygen documentation for full install instructions
-=======================================================================
+------------------------------
+Getting the documentation
+------------------------------
 
 
 A regularly-updated copy is available at 
 A regularly-updated copy is available at 
 http://assimp.sourceforge.net/lib_html/index.html
 http://assimp.sourceforge.net/lib_html/index.html
@@ -20,38 +20,27 @@ c) navigate to ./doc
 d) and run 'doxygen'
 d) and run 'doxygen'
 
 
 Open the generated HTML (AssimpDoc_Html/index.html) in the browser of your choice.
 Open the generated HTML (AssimpDoc_Html/index.html) in the browser of your choice.
-Windows only: To generate the CHM doc install the 'Microsoft HTML Workshop'
-and configure the path to it in the DOXYFILE. Run doxygen again.
-
-=======================================================================
-For the inpatient:
-
-Windows: go to ./workspaces/vc8 or ./workspaces/vc9, open the
-VS Solution and build for your preferred build target ...
-release-dll is usually the best choice. Adjust the runtime library to
-your needs, multithreaded-dll is preconfigured by default.
-
-These solutions are currently hand-maintained, they copy all
-the resulting binaries to ./bin/config-name at the moment. 
-
-Unix & Family:
-
-CMake is now our preferred build tool. Run cmake with your
-favourite build script generator from *here* and have fun.
-If you use cmake only to get a makefile, run 
-'make' and 'make install' afterwards. 
-
-NOTE: in order to use the assimp command line tools, you may
-need to run ldconfig as root to make the so loader find
-the assimp shared library --
-
-Note that running make from ./code is deprecated, although there
-is still a suitable makefile in it.
-
+Windows only: To generate the CHM doc, install 'Microsoft HTML Workshop'
+and configure the path to it in the DOXYFILE first. 
 
 
+------------------------------
+Building Assimp 
+------------------------------
 
 
+More detailed build instructions can be found in the documentation,
+this section is just for the inpatient among you.
 
 
+CMake is the preferred build system for Assimp. The minimum required version 
+is 2.6. If you don't have it yet, downloads for CMake can be found on
+http://www.cmake.org/. 
 
 
+Building Assimp with CMake is 'business as usual' if you've used CMake
+before. All steps can be done either on the command line / shell or
+by using the CMake GUI tool, the choice is up to you. 
 
 
+First, invoke CMake to generate build files for a particular
+toolchain (for standard GNU makefiles: cmake -G 'Unix Makefiles').
+Afterwards, use the generated build files to perform the actual
+build. 
 
 
 
 

+ 83 - 43
README

@@ -1,22 +1,40 @@
-	Open Asset Import Library (Assimp) Readme
-	-----------------------------------------
-
-Here you can find information regarding Open Asset Import Library:
-
+
+========================================================================
+Open Asset Import Library (assimp) README
+========================================================================
+
+
+Table of Contents
+
 	1.		Overview
 	1.		Overview
-	1.1		Supported file formats
-	1.2		File structure
-	2.		Build the Asset Import Library
+	 1.1		Supported file formats
+	 1.2		File structure
+	2.		Build the library
 	3. 		Help
 	3. 		Help
 	4.		License
 	4.		License
 
 
-
-
+
+------------------------------
 1.	Overview
 1.	Overview
-1.1	Supported file formats
-
-The Asset Import Library provides a lot of model formats:
+------------------------------
+
+Open Asset Import Library is a Open Source library designed to load various 3d file
+formats and convert them into a shared, in-memory format. It supports more than
+30 file formats. Basically, it is like DevIL for 3D models.
+
+Its short name is 'assimp', which is an unintended joke (the abbreviation is derived 
+from 'Asset Importer'). 
+
+
+----------------
+ 1.1	Supported file formats
+----------------
+
+The library provides importers for a lot of file formats, including:
 	- 3DS
 	- 3DS
+	- BLEND
+	- Collada
+	- IFC-STEP
 	- ASE
 	- ASE
 	- DXF
 	- DXF
 	- HMP
 	- HMP
@@ -32,48 +50,70 @@ The Asset Import Library provides a lot of model formats:
 	- LWO
 	- LWO
 	- OBJ
 	- OBJ
 	- SMD
 	- SMD
-	
-	- Collada
-	
 	- LWO
 	- LWO
-	
 	- Ogre XML
 	- Ogre XML
 	
 	
-	- partly LWS
-	
-	- .. + many more, see http://assimp.sourceforge.net/main_features_formats.html for a full list.
+	
+ .. plus many more, see 
+http://assimp.sourceforge.net/main_features_formats.html for a more exhaustive list.
 
 
 
 
+----------------
 1.2 Repository structure
 1.2 Repository structure
-
-Open Asset Import Library is implemented in C++ and provides a C-interface. The directory structure is:
-
-	/bin			Binaries of the Asset Import Library.
-	/code			Code of the Asset Import Library.
-	/contrib		Third-party-libraries used by the Asset Import Library.
-	/doc			Documentation (doxygen generated and data structure as a xml file)
-	/include		Public headers.
-	/lib			Static library location for Windows.
-	/obj			Object file location for Windows.
-	/port			Ports to other languages. 
+----------------
+
+Open Asset Import Library is implemented in C++ (but provides both a C and a C++ish interface). 
+The directory structure is:
+
+	/bin		Binaries, onyl used on Windows.
+	/code		Source code.
+	/contrib	Third-party-libraries used by the Asset Import Library.
+	/doc		Documentation (doxygen generated and data structure draft)
+	/include	Public headers for you to #include.
+	/lib		Static library location for Windows.
+	/obj		Object file location for Windows.
+	/port		Ports to other languages and scripts therefor. 
 	
 	
-	/test			Unit- and regression tests, model test suite.
-	/tools			Tools (viewer, command line `assimp`).
-	/workspaces		Build enviroments for vc,xcode,...
+	/test		Unit- and regression tests, test suite of models.
+	/tools		Tools (viewer, command line `assimp`).
+	/samples	A small number of samples to illustrate possible use-cases.
+	/workspaces	Build enviroments for vc,xcode,... (deprecated,
+			CMake has superseeded all legacy build options)
 
 
 
 
-
-2. Build the Asset Import Library
+------------------------------
+2. Build the library
+------------------------------
 
 
 Take a look into the INSTALL file.
 Take a look into the INSTALL file.
 
 
 
 
-
+------------------------------
 3. Help
 3. Help
-
-For more help go to http://assimp.sourceforge.net/ (or, for germans, http://www.zfx.info). Or take a look into the doc-folder, which contains the doxygen-generated documentation in HTMl format (CHMs for Windows are as well contained in some distributions and located right here in the root folder).
-
-
+------------------------------
+
+For more information go to http://assimp.sourceforge.net/. Or have a look into the ./doc-
+folder, which contains the Doxygen-generated documentation in HTML format (CHMs for
+ Windows are also included in some distributions and should be located right here in
+ the root folder).
+
+If reading the documentation doesn't solve your problems, try our forums at SF.net 
+  Open Discussion: http://sourceforge.net/projects/assimp/forums/forum/817653) 
+  Help: http://sourceforge.net/projects/assimp/forums/forum/817654
+
+or our  mailing list, assimp-discussions 
+  archive: http://sourceforge.net/mailarchive/forum.php?forum_name=assimp-discussions,
+  subscribe: https://lists.sourceforge.net/lists/listinfo/assimp-discussions 
+
+
+------------------------------
 4. License
 4. License
-
-The license of the Asset Import Library is based on the BSD-License. It is contained in the LICENSE file.
+------------------------------
+
+The license of the Asset Import Library is based on the modified, 3-clause BSD-License,
+which is a very liberal license. An _informal_ summary of the license is: do whatever 
+you want, but include Assimp's license text with your product - and don't sue us
+if it doesn't work.
+
+For the formal details, see the LICENSE file. 
+

BIN
doc/AssimpDoc_Html/AssimpDoc.chm


+ 35 - 55
doc/dox.h

@@ -130,6 +130,7 @@ assimp-discussions</a>.
 /**
 /**
 @page install Installation
 @page install Installation
 
 
+
 @section install_prebuilt Using the pre-built libraries with Visual C++ 8/9
 @section install_prebuilt Using the pre-built libraries with Visual C++ 8/9
 
 
 If you develop at Visual Studio 2005 or 2008, you can simply use the pre-built linker libraries provided in the distribution.
 If you develop at Visual Studio 2005 or 2008, you can simply use the pre-built linker libraries provided in the distribution.
@@ -148,18 +149,16 @@ run and use the application. If the linker complains about some integral functio
 mixed the runtimes. Recheck the project configuration (project properties -&gt; C++ -&gt; Code generation -&gt; Runtime) if you use 
 mixed the runtimes. Recheck the project configuration (project properties -&gt; C++ -&gt; Code generation -&gt; Runtime) if you use 
 static runtimes (Multithreaded / Multithreaded Debug) or dynamic runtimes (Multithreaded DLL / Multithreaded Debug DLL).
 static runtimes (Multithreaded / Multithreaded Debug) or dynamic runtimes (Multithreaded DLL / Multithreaded Debug DLL).
 Choose the ASSIMP linker lib accordingly. 
 Choose the ASSIMP linker lib accordingly. 
-<br>
+<br><br>
 Please don't forget to also read the @ref assimp_stl section on MSVC and the STL.
 Please don't forget to also read the @ref assimp_stl section on MSVC and the STL.
 
 
-@section assimp_stl Microsoft Compilers & STL
+@section assimp_stl Microsoft Compilers and the C++ Standard Library 
 
 
-In VC8 and VC9 Microsoft has introduced some STL debugging features. A good example are improved iterator checks and
-various useful debug checks. Actually they are really helpful for debugging, but they're extremely slow. They're
-so extremely slow that they can make the STL up to 100 times slower (imagine a <i>std::vector<T>::operator[] </i>
-performing 3 or 4 single checks! scary ...).
+In VC8 and VC9 Microsoft introduced some Standard Library debugging features. A good example are improved iterator checks and
+various useful debug checks. The problem is the performance penalty that incurs with those extra checks.
 
 
-These security enhancements are - thanks MS! - also active in release builds, rendering ASSIMP several times 
-slower. However, it is possible to disable them by defining
+Most of these security enhancements are active in release builds by default, rendering ASSIMP several times 
+slower. However, it is possible to disable them by setting
 
 
 @code
 @code
 _HAS_ITERATOR_DEBUGGING=0
 _HAS_ITERATOR_DEBUGGING=0
@@ -174,11 +173,11 @@ If you do not, there are two binary incompatible STL versions mangled together a
 Alternatively you can disable the fast STL settings for ASSIMP by removing the 'FastSTL' property sheet from
 Alternatively you can disable the fast STL settings for ASSIMP by removing the 'FastSTL' property sheet from
 the vc project file.
 the vc project file.
 
 
-<i>If you're using ASSIMP in a DLL:</i> It's ok. There's no STL used in the DLL interface, so it doesn't care whether
+<i>If you're using ASSIMP in a DLL/SO:</i> It's ok. There's no STL used in the binary DLL/SO interface, so it doesn't care whether
 your application uses the same STL settings or not.
 your application uses the same STL settings or not.
 <br><br>
 <br><br>
 Another option is to build against a different STL implementation, for example STlport. There's a special 
 Another option is to build against a different STL implementation, for example STlport. There's a special 
-@ref assimp_stlport section which describes how to achieve this.
+@ref assimp_stlport section that has a description how to achieve this.
 
 
 
 
 @section install_own Building the library from scratch
 @section install_own Building the library from scratch
@@ -191,12 +190,12 @@ it for yourself. Read the "Getting Started" section of the Boost documentation f
 can use a comfortable installer from <a href="http://www.boost-consulting.com/products/free">
 can use a comfortable installer from <a href="http://www.boost-consulting.com/products/free">
 http://www.boost-consulting.com/products/free</a>. Choose the appropriate version of boost for your runtime of choice.
 http://www.boost-consulting.com/products/free</a>. Choose the appropriate version of boost for your runtime of choice.
 
 
-<b>If you don't want to use boost</b>, you can build against our <i>"Boost-Workaround"</i>. It consists of very small (dummy)
+<b>If you don't want to use boost</b>, you can build against our <i>"Boost-Workaround"</i>. It consists of very small 
 implementations of the various boost utility classes used. However, you'll loose functionality (e.g. threading) by doing this. 
 implementations of the various boost utility classes used. However, you'll loose functionality (e.g. threading) by doing this. 
-So, if it is possible to use boost, you should use boost. See the @link use_noboost NoBoost-Section @endlink 
-later on this page for more details.
+So, if you can use boost, you should use boost. Otherwise, See the @link use_noboost NoBoost-Section @endlink 
+later on this page for the details of the workaround.
 
 
-Once boost is working, you have to set up a project for the ASSIMP library in your favourite IDE. If you use VC2005 or
+Once boost is working, you have to set up a project for the ASSIMP library in your favorite IDE. If you use VC2005 or
 VC2008, you can simply load the solution or project files in the workspaces/ folder, otherwise you have to create a new 
 VC2008, you can simply load the solution or project files in the workspaces/ folder, otherwise you have to create a new 
 package and add all the headers and source files from the include/ and code/ directories. Set the temporary output folder
 package and add all the headers and source files from the include/ and code/ directories. Set the temporary output folder
 to obj/, for example, and redirect the output folder to bin/. Then build the library - it should compile and link fine.
 to obj/, for example, and redirect the output folder to bin/. Then build the library - it should compile and link fine.
@@ -210,15 +209,16 @@ your solution.
 @section use_noboost Building without boost.
 @section use_noboost Building without boost.
 
 
 The Boost-Workaround consists of dummy replacements for some boost utility templates. Currently there are replacements for
 The Boost-Workaround consists of dummy replacements for some boost utility templates. Currently there are replacements for
-<ul>
-<li><i>boost.scoped_ptr</i></li>
-<li><i>boost.scoped_array</i></li>
-<li><i>boost.format</i> </li>
-<li><i>boost.random</i> </li>
-<li><i>boost.common_factor</i> </li>
-<li><i>boost.foreach</i> </li>
-<li><i>boost.tuple</i></li>
-</ul>
+
+ - boost.scoped_ptr
+ - boost.scoped_array
+ - boost.format
+ - boost.random
+ - boost.common_factor
+ - boost.foreach
+ - boost.tuple
+ - boost.make_shared
+
 These implementations are very limited and are not intended for use outside ASSIMP. A compiler
 These implementations are very limited and are not intended for use outside ASSIMP. A compiler
 with full support for partial template specializations is required. To enable the workaround, put the following in
 with full support for partial template specializations is required. To enable the workaround, put the following in
 your compiler's list of predefined macros: 
 your compiler's list of predefined macros: 
@@ -233,49 +233,29 @@ See the @ref assimp_st section
 for more details.
 for more details.
 
 
 
 
-@section assimp_make Build with MAKE
-
-To build Assimp with MAKE, navigate to the <tt>code</tt> directory and run 
-@code
-make
-@endcode
-respectively 
-@code
-make -fmakefile.mingw
-@endcode
-for mingw-make. For a <i>-noboost</i>-Build, append 
-@code
-NOBOOST=1
-@endcode
-
-@section assimp_st Single-threaded build
-
--- currently there is no difference between single-thread and normal builds --
 
 
 
 
-@section assimp_dll DLL build
+@section assimp_dll Windows DLL Build
 
 
 ASSIMP can be built as DLL. You just need to select a -dll config from the list of project
 ASSIMP can be built as DLL. You just need to select a -dll config from the list of project
-configs and you're fine. Don't forget to copy the DLL to the directory of your executable :-)
+configs and you're fine.
 
 
-<b>NOTE:</b> Theoretically ASSIMP-dll can be used with multithreaded (non-dll) runtime libraries, 
-as long as you don't utilize any non-public stuff from the code dir. However, if you happen
-to encounter *very* strange problems try changing the runtime to multithreaded (Debug) DLL.
+<b>NOTE:</b> Theoretically, assimp-dll can be used with multithreaded (non-dll) runtime libraries, 
+as long as you don't utilize any non-public stuff from the code folder. However, if you happen
+to encounter *very* strange problems, try changing the runtime to <i>Multithreaded (Debug) DLL</i>.
 
 
 @section assimp_stlport Building against STLport
 @section assimp_stlport Building against STLport
 
 
-If your compiler's default implementation of the STL is too slow, lacks some features,
-contains bugs or if you just want to tweak ASSIMP's performance a little try a build
-against STLport. STLport is a free, fast and secure STL replacement that works with
-all major compilers and platforms. To get it visit their website at
-<a href="http://www.stlport.org"/><stlport.org></a> and download the latest STLport release.
-Usually you'll just need to run 'configure' + a makefile (see the README for more details).
+STLport is a free, fast and secure STL replacement that works with
+all major compilers and platforms. To get it, download the latest release from
+<a href="http://www.stlport.org"/><stlport.org></a>.
+Usually you'll just need to run 'configure' + a makefile (see their README for more details).
 Don't miss to add <stlport_root>/stlport to your compiler's default include paths - <b>prior</b>
 Don't miss to add <stlport_root>/stlport to your compiler's default include paths - <b>prior</b>
-to the directory where the compiler vendor's STL lies. Do the same for  <stlport_root>/lib and
+to the directory where your compiler vendor's headers lie. Do the same for  <stlport_root>/lib and
 recompile ASSIMP. To ensure you're really building against STLport see aiGetCompileFlags().
 recompile ASSIMP. To ensure you're really building against STLport see aiGetCompileFlags().
 <br>
 <br>
-Usually building ASSIMP against STLport yields a better overall performance so it might be
-worth a try if the library is too slow for you.
+In our testing, STLport builds tend to be a bit faster than builds against Microsoft's
+C++ Standard Library.
 
 
 */
 */