home *** CD-ROM | disk | FTP | other *** search
/ Learn 3D Graphics Programming on the PC / Learn_3D_Graphics_Programming_on_the_PC_Ferraro.iso / rwwin / rwvb.tx_ / rwvb.bin
Text File  |  1995-11-14  |  9KB  |  228 lines

  1.     RenderWare v1.4 (FCS) Visual Basic Prototype Library Interface
  2.     ==============================================================
  3.  
  4.                            Alpha Version
  5.                            -------------
  6.  
  7.                            Release Notes
  8.                            -------------
  9.  
  10. ----------------------------------------------------------------------
  11. This software is copyright Criterion Software Limited 1994, 1995. 
  12. All Rights Reserved.
  13.  
  14. This software is furnished under a license agreement or a
  15. non-disclosure agreement. The software may be used or copied only in
  16. accordance with the terms of the agreement. It is against the law to
  17. copy the software on any medium except as specifically allowed in the
  18. license or non-disclosure agreement.
  19.  
  20. RenderWare is a trademark of Canon Inc.
  21. ----------------------------------------------------------------------
  22.  
  23. ----------------------------------------------------------------------
  24.                            Introduction
  25. ----------------------------------------------------------------------
  26.  
  27. Welcome to the prototype RenderWare Visual Basic API. The BASIC files
  28. included in this distribution implement a sub-set of the RenderWare 
  29. API and are intended as a technology demonstration and, importantly, 
  30. a way of getting your feedback on what you want from a Visual Basic 
  31. interactive 3D graphics library. So if you have any comments on this 
  32. alpha release please get in touch with us via one of the mechanisms 
  33. listed at the end of this file.
  34.  
  35. DISCLAIMER
  36. ----------
  37. This release of the RenderWare library for Visual Basic is still 
  38. considered an Alpha release. Due to the timescales involved, 
  39. Criterion Software cannot guarantee to have checked all the calls 
  40. contained in this release. If any problems are encountered, let us 
  41. know as soon as possible. Fixes are likely to be simple changes to 
  42. text files which can be forwarded to you either by e-mail, fax or 
  43. snail mail.
  44.  
  45. ----------------------------------------------------------------------
  46.         Visual Basic and the RenderWare v1.4 (FCS) DLLs
  47. ----------------------------------------------------------------------
  48.  
  49. As the Visual Basic interface is based on the RenderWare DLL
  50. technology included in the v1.4 (FCS) the restrictions of that
  51. release also apply to the Visual Basic interface. Namely, only a
  52. single RenderWare application (C or Visual Basic) may connect to
  53. the DLL at any one time.
  54.  
  55. As the Visual Basic interface makes use of the RenderWare v1.4 (FCS)
  56. DLLs these DLLs ("RWX.DLL" and "RWL.DLL") must be located somewhere
  57. on the MS Windows DLL search path. The Visual Basic API may also
  58. make use of the debugging versions of the RenderWare library. For
  59. information on how to use the debugging DLLs see the file "README.TXT"
  60. in the "LIB" sub-directory of the v1.4 (FCS) distribution.
  61.  
  62. ----------------------------------------------------------------------
  63.                            The Interface
  64. ----------------------------------------------------------------------
  65.  
  66. The RenderWare VB interface consists of 3 .BAS files.
  67.  
  68.     RW.BAS  - common defines and procedures for both libraries
  69.     RWX.BAS - interface to the fixed point RenderWare DLL
  70.     RWL.BAS - interface to the floating point RenderWare DLL
  71.  
  72. The C data type RwReal is replaced by the VB type Single for both the
  73. fixed point and the floating point interfaces. This is a further 
  74. simplification of the previous version. This has a number of benefits;
  75.  
  76. 1)  The caller no longer need worry about the format of the data passed
  77.     to the DLL.
  78. 2)  The RenderWare maths functions need no longer be used for 
  79.     portability between fixed and floating point DLLs.
  80.  
  81. The main drawback of this approach is that all parameters to the fixed
  82. point DLL have first to be converted from floating point. To minimize
  83. the impact of this, DLL functions that take RwReal's as parameters still 
  84. take a Variant in the VB interface. For the fixed point library it will 
  85. be quicker to convert from Long or Integer values if no FPU is present.
  86.  
  87. For the majority of functions, the VB calling convention is very similar to
  88. the C calling convention. Functions that have had their calling convention 
  89. modified are listed later.
  90.  
  91. The main change between the C and VB interfaces is that the following types
  92. are treated as Long handles in VB.
  93.  
  94.     RwCamera *
  95.     RwClump *
  96.     RwLight *
  97.     RwMaterial *
  98.     RwMatrix4d *
  99.     RwPolgon3d *
  100.     RwRaster *
  101.     RwScene *
  102.     RwSpline *
  103.     RwTexture *
  104.  
  105. A couple of defines had similar names to functions. VB couldn't handle this
  106. so they have been changed as follows;
  107.  
  108.     rwVERTEX     => rwSMOOTHSHADE
  109.     rwPICKCLUMP  => rwPICKEDCLUMP
  110.     rwPICKVERTEX => rwPICKEDVERTEX (for compatability with above)
  111.  
  112.  
  113. Modified Functions
  114. ------------------
  115. The following function has had it's calling convention modified to 
  116. simplify calling from VB;
  117.  
  118. Function ShowCameraImage( Cam, hDC, hWnd ) As Long
  119.    ByVal Cam As Long
  120.    ByVal hDC As Integer
  121.    ByVal hWnd As Integer
  122.  
  123. The following functions have a parameter of variable type. In each case 
  124. this has been declared as type String. Where this is not appropriate it is 
  125. up to the user to convert the characters in the string to the required 
  126. format. An example of this can be found in the sample program.
  127.  
  128.    RwDeviceControl()
  129.    RwGetDeviceInfo()
  130.    RwGetSystemInfo()
  131.  
  132.  
  133. Functions NOT Supported
  134. -----------------------
  135. The following functions are not supported in this release;
  136.  
  137.     All UserDraw functions.
  138.     RwFindClump()
  139.     RwFindClumpInt()
  140.     RwFindClumpLong()
  141.     RwFindClumpPointer()
  142.     RwFindClumpReal()
  143.     RwForAllClumpsInHierarchy()
  144.     RwForAllClumpsInHierarchyInt()
  145.     RwForAllClumpsInHierarchyLong()
  146.     RwForAllClumpsInHierarchyPointer()
  147.     RwForAllClumpsInHierarchyReal()
  148.     RwForAllClumpsInScene()
  149.     RwForAllClumpsInSceneInt()
  150.     RwForAllClumpsInSceneLong()
  151.     RwForAllClumpsInScenePointer()
  152.     RwForAllClumpsInSceneReal()
  153.     RwForAllLightsInScene()
  154.     RwForAllLightsInSceneInt()
  155.     RwForAllLightsInSceneLong()
  156.     RwForAllLightsInScenePointer()
  157.     RwForAllLightsInSceneReal()
  158.     RwForAllNamedTextures()
  159.     RwForAllNamedTexturesInt()
  160.     RwForAllNamedTexturesLong()
  161.     RwForAllNamedTexturesPointer()
  162.     RwForAllNamedTexturesReal()
  163.     RwForAllPolygonsInClump()
  164.     RwForAllPolygonsInClumpInt()
  165.     RwForAllPolygonsInClumpLong()
  166.     RwForAllPolygonsInClumpPointer()
  167.     RwForAllPolygonsInClumpReal()
  168.     RwSetDebugStream()
  169.  
  170.  
  171. Samples
  172. -------
  173. As an aid to writing Visual Basic RenderWare applications, a simple viewer
  174. program is included as an example. The files for this are as follows;
  175.  
  176.     RWVBVIEW.MAK
  177.     RWVBVIEW.FRM
  178.     RWVBVIEW.FRX
  179.     RWVBINFO.FRM
  180.     RWVBINFO.FRX
  181.  
  182. The makefile may require editing to change the locations it looks for the 
  183. RenderWare .BAS files on your system.
  184.  
  185.  
  186. Optimization
  187. ------------
  188. All files in this release are stored in text format. Developers may find 
  189. that resaving them in binary format speeds up development time.
  190.  
  191. Final code size can be greatly reduced by taking local copies of the BAS
  192. files and stripping out all unused calls. This can either be done by hand
  193. or by using a tool such as VBCOMPRESS.
  194.  
  195. ----------------------------------------------------------------------
  196.           Changes from previous release with 1.35 DLL (DEA)
  197. ----------------------------------------------------------------------
  198.  
  199. The main change that will affect the modification of programs written
  200. with the previous release of the VB Interface is that many of the 
  201. parameters and return values to and from the DLL have changed from 
  202. Integers to Long values. Also all conversions macros have now 
  203. disappeared, along with the RenderWare maths functions. Callers should
  204. now use floating point maths. The VB Interface now uses Single rather
  205. than Variant for many return values, though Variant is still supported
  206. for parameters to the library functions. Callers may wish to change to
  207. using Single for these parameters, though Variants will still continue
  208. to work.
  209.  
  210. ----------------------------------------------------------------------
  211.                          Technical Support
  212. ----------------------------------------------------------------------
  213.  
  214. In case of any problems or difficulties, please contact:
  215.  
  216. RenderWare Technical Support
  217. Criterion Software Ltd.
  218. email: rw-support@criterion.canon.co.uk
  219. phone: +44 483 448822
  220. fax:   +44 483 448811
  221.  
  222.  
  223. ----------------------------------------------------------------------
  224.                          Acknowledgments
  225. ----------------------------------------------------------------------
  226.  
  227. RenderWare is a trademark of Canon Inc.
  228.