home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / sys / amiga / programmer / 4835 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  10.0 KB

  1. Path: informatik.tu-muenchen.de!fischerj
  2. From: fischerj@informatik.tu-muenchen.de (Juergen "Rally" Fischer)
  3. Newsgroups: comp.sys.amiga.programmer
  4. Subject: Re: Amiga doesn`t need Pl
  5. Date: 5 Mar 1996 16:34:16 GMT
  6. Organization: Technische Universitaet Muenchen, Germany
  7. Distribution: world
  8. Message-ID: <4hhqe8$7ru@sunsystem5.informatik.tu-muenchen.de>
  9. References: <john.hendrikx.4iy3@grafix.xs4all.nl>
  10. NNTP-Posting-Host: hphalle6g.informatik.tu-muenchen.de
  11. Originator: fischerj@hphalle6g.informatik.tu-muenchen.de
  12.  
  13.  
  14. In article <john.hendrikx.4iy3@grafix.xs4all.nl>, john.hendrikx@grafix.xs4all.nl (John Hendrikx) writes:
  15. |> In a message of 25 Feb 96 Juergen "rally" Fischer wrote to All:
  16. |> 
  17. |>  JrF> todays 1230 or 1240 should be able to do same (wasn't doom busy waiting
  18. |>  JrF> for vblank bit? I think so!)
  19. |> 
  20. |> As DOOM was tripple-buffered I don't see why, unless it would run faster than
  21. |> the display update rate.
  22.  
  23. maybe I missed new features of new wad players ?
  24. I remember having heard of vblank polling.
  25.  
  26. I guess you refer to DOS-DOOM talking about tripple buffering
  27. (coz you need vbl int).
  28.  
  29. |> 
  30. |>  >>  JrF> You rely on _programming crap_ in combination with low cpu. No, a
  31. |>  >> game which is unplayable because it uses a fuzzy 2x2 160x120 display (or
  32. |>  >> less!) and jerks like hell is CRAP.
  33. |>  JrF> fuzzy 2x2 due to low cpu, jerk due to low cpu. not AGA.
  34. |> 
  35. |> So speed would remain the same if AGA had been Chunky?  Maybe it makes little
  36.  
  37. Yes, you got it! doom speed with AGA chunky would be same as AGA planar.
  38.  
  39. |> difference on mega-big-CPU (as long as you stick with LoRes that is) but it
  40.  
  41. no, it even makes no diffference on my 020-14 + fastmem, because blitter
  42. got enough time to convert iff 020 is to render a doom scene.
  43.  
  44. why don't you agree ?
  45.  
  46. |> will make quite a difference here.
  47. |> 
  48. |>  >>  Blitter assistance: Requires non-interleaved bitmaps, impossible to
  49. |>  JrF> that's no problem.
  50. |> 
  51. |> Not always, it depends on what 'other' stuff you want to do in your game.
  52. ok...
  53.  
  54. |> 
  55. |>  >>                      C2P a smaller part of the whole screen
  56. |>  JrF> that's no problem concering games like doom.
  57. |> 
  58. |> Isn't it?
  59. ok, if you make the window smallwer but want some background texture
  60. around it, you got to think about using the sprites for that ;)
  61. I see there is a disadvantage ;) but not speedwise!
  62.  
  63. |> 
  64. |>  >>                      on factors like CPU, fast-memory, etcetera...
  65. |> 
  66. |>  JrF> The disadvantage is that you got to code more, right. no technical
  67. |>  JrF> argument.
  68. |> 
  69. |> Oh sure, just code a bit more, I guess that's why we see so many DOOM clones
  70. |> which actually USE this kind of stuff, NOT.
  71.  
  72. I thought you were claiming technical planar problems ? 
  73. less frameratee and such ?
  74.  
  75. |> 
  76. |>  >>                      Try to get it to work on Intuition-screen and make
  77. |>  >>                      your DOOM-clone support multiple window sizes.
  78. |>  JrF> closescreen. openscreen.
  79. |> 
  80. |> Shitty solution.  I suppose the overlayed text should also have to be shrunk
  81. |> accordingly?  What about the status panel? Just open another screen you say? 
  82. |> Another 'special' routine as this can't be used on most gfx-cards.
  83.  
  84. mhm, vports are said to be supported also on gfx-cards.
  85. what you argue about ?
  86.  
  87. |> 
  88. |>  >>       Chunky Copper: Crappy resolution, wastes lots of ChipRAM bandwidth
  89. |>  JrF> demo only.
  90. |> 
  91. |> Most of the stuff I've seen here is 'demo' only.  For example, using 64K for a
  92. |> single texture and stuff like 256K loop-up tables are quite unrealistic for
  93. |> real games.
  94. 256k is nothing on the doom-loved clones.
  95.  
  96. |> 
  97. |>  JrF> I already got 1pass. still got 2pass to write, ludde is said to have
  98. |>  JrF> it done free.
  99. |> 
  100. |> Don't forget to ask him what 'new' limitations this 'trick' will introduce.
  101.  
  102. it will at least give kind of square where kind of doom is in ;)
  103. no demo cubes outside display window, I see ;)
  104.  
  105. |> 
  106. |>  >> and probably one which uses AKIKO, and of course for each of these
  107. |>  >> routines a
  108. |>  JrF> FORGET AKIKO.
  109. |> 
  110. |> Oh, I bet there is some 'strange' config which could actually make AKIKO an
  111. |> advantage (maybe AKIKO + BlitterAssistance or something stupid like that?)
  112.  
  113. yep, if chipmem was faster ;) I hope new chipsets will also have chunky ;)
  114.  
  115. |> 
  116. |>  >> version which does 2x1 displays, and versions for 16, 64 and 256 colors.
  117. |>  >> Maybe also add ChunkyCopper and BlitterScreen C2P?  It looks like we've
  118. |>  >> gone C2P
  119. |>  JrF> FORGET COPPER.
  120. |> 
  121. |> I did that years ago, when everybody kept begging me to add copper-screens to
  122. |> TextDemo.
  123.  
  124. hehe, got me ;)
  125. so now we have free c2p, why you won't add that ?
  126.  
  127. |> 
  128. |>  JrF> blitterscreen is only nessesary for fast clones, otherwise use 4pass.
  129. |> 
  130. |> Why don't you make a huge IF THEN kind of list of C2P routines, like this:
  131. |> 
  132. |>   IF AGA=TRUE AND GFXCARD=FALSE
  133. |>      IF 040=TRUE
  134. |>         IF 040=SLOW4000/040
  135. |>             use CPU 3-pass 32-bit C2P + blitter assistance (or whatever)
  136. |>         ELSE
  137. |>             use CPU only C2P
  138. |>         ENDIF
  139. |>      ELSE IF 030=TRUE
  140. |>         IF MHZ=>33
  141. |>             use 3-pass 32-bit C2P + blitter assistance
  142. |>         ELSE
  143. |>             use 2-pass 32-bit C2P + blitter assistance
  144. |>         ENDIF
  145. |>      ELSE
  146. |>         IF FASTRAM=PRESENT
  147. |>             IF AKIKO=TRUE
  148. |>                 use AKIKO + blitter assistance
  149. |>             ELSE
  150. |>                 use ...
  151. |>             ENDIF
  152. |>         ELSE
  153. |>             IF AKIKO=TRUE
  154. |>                 use ...
  155. |>             ELSE
  156. |>                 use ...
  157. |>             ENDIF
  158. |>         ENDIF
  159. |>      ENDIF
  160. |>   ELSE IF ECS=TRUE AND GFXCARD=FALSE
  161. |>      IF ...
  162. |>         ...
  163. |>      ELSE
  164. |>         ...
  165. |>      ENDIF
  166. |>   ELSE IF OCS=TRUE AND GFXCARD=FALSE
  167. |>      IF ...
  168. |>         ...
  169. |>      ELSE
  170. |>         ...
  171. |>      ENDIF
  172. |>   ELSE
  173. |>      IF BUS=ZII
  174. |>          IF SEGMENTED=FALSE
  175. |>              IF PICASSO=TRUE
  176. |>                  ...
  177. |>              ELSE
  178. |>                  ...
  179. |>              ENDIF
  180. |>          ENDIF
  181. |>      ELSE
  182. |>         ...
  183. |>      ENDIF
  184. |>   ENDIF
  185. |> 
  186. |> and so on, and oh I forgot, the best C2P routine to use also depends on how
  187. |> much rendering needs to be done (ie, what resolution and how big the screen is)
  188. |> so take that into account too!
  189.  
  190. yes, that's it. now try to optimize the list for the important points.
  191.  
  192. 2+2pass, 3+1pass, writepixelarray8.
  193.  
  194. lots of people would be much happier if you just added those 3 to TD.
  195.  
  196. |> 
  197. |> And some people claim here that having to take all the gfx-cards on the clones
  198. |> into account is such a big problem...
  199. |> 
  200. |>  >> There is no Amiga with the same power as the P133.  And my 'average' (and
  201. |>  >> 2 year old $100) VLB Gfx card handles 15 MB/sec easily, more than enough
  202. |>  >> to do 640x480 in 2 frames.
  203. |> 
  204. |>  JrF> If 15mb/sec is more than enough to do 640x480 gfx, 6mb/sec surely are
  205. |>  JrF> no problem doing 320x160 ;) you contradict yourself :)
  206. |> 
  207. |> You claim things not having been done yet.  What was that 20-25 ms figure which
  208. |> most 040 C2P routines get?
  209.  
  210. am I misinformed ?
  211.  
  212. |> 
  213. |>  JrF> ok, 10 planes would need a faster cpu. Maybe one of the faster PPCs
  214. |>  JrF> could do c2-10p in 15mb/sec ? :) If so this would outrule non-paletted
  215. |>  JrF> 16bit displays (smother shading) and 24bit displays in terms of shding
  216. |>  JrF> speed (with 10 bit just use 4 for shading, doing shading with just
  217. |> 
  218. |> 16 shading levels with just 64 colors?  No thanks.  I'll go for the 15/16-bit
  219. |> screen with 65536 colors with on average 16 shading levels.  Or maybe I'll just
  220. |> use some of the more fancy YCrCb modes were Y is the intensity level.
  221.  
  222. ok I agree, crominance + luminance is the way to get fast shading.
  223.  
  224. |> 
  225. |>  JrF> adding a register, no table-lookup -> more speed. Imagine descent real
  226. |>  JrF> gouraudshaded :).
  227. |> 
  228. |> Why imagine?  There are already games doing that.
  229.  
  230. but descent doesnt do that....
  231.  
  232. |> 
  233. |>  >> There is no (good) clone because it requires a 040 + fast Chunky
  234. |>  >> gfx-card, period.  Caused of course by the fact that 040 + fast Chunky
  235. |>  >> gfx-card is a rare combination found in the Amiga world.
  236. |> 
  237. |>  JrF> "That's why there is no clone, the C2P problem...". What he wanted to
  238. |>  JrF> say, is a technical argument. You give me a marketing argument, which I
  239. |>  JrF> am not interested in now.
  240. |> 
  241. |> Not yet.
  242. |> 
  243. |>  JrF> So if something keeps us from having 16.6fps doom, it's either the cpu
  244. |>  JrF> (how much could a 030-50 do when using same algo like doom ?) or the
  245. |> 
  246. |> Without C2P 030-50 should be capable of max 12 FPS (that would mean it has to
  247. |> be 50% faster than TextDemo running without C2P, if you think that is a
  248. |> realistic goal), 320x240 1x1 exact DOOM engine.
  249. |> 
  250. |>  >> That's TextDemo 5.7x (unreleased version) someone tested for me.  15-20
  251. |>  >> FPS for a 68060/50 which is supposed to be 2-3 times as powerfull as a
  252. |>  >> 486DX2/50 is quite depressing, considering that that 486 will do it at 30
  253. |>  >> FPS.  Now just
  254. |> 
  255. |>  JrF> running DOOM... are you sure doom does as complicated mapping... 2-3
  256. |> 
  257. |> Yes, TD did no more than DOOM did (even though it may SEEM that way because of
  258. |> some clever lightsourcing code).
  259. |> 
  260. |>  JrF> times... IMHO in that range it depends much more on the mem interface.
  261. |>  JrF> cache ? Reading textures is a quite mem intensive job, especially if
  262. |>  JrF> you do a table lookup for reach pixel (which is hopefully in cache
  263. |>  JrF> sometimes).
  264. |> 
  265. |>  >> translate that to the slower Amiga's (ie, the ones only equipped with
  266. |>  >> 030's and 040's).
  267. |>  JrF> well, imho there is nothing against using the 11cycle mapper for
  268. |>  JrF> floor, using coppershading. at least for 020/030.
  269. |> 
  270. |> IF 020/030 THEN ... sigh...
  271.  
  272. well, coppershaded floor means 70% faster. add a wallshade fake
  273. (trading mem, some cards got quite much mem) and it's even faster.
  274.  
  275. |> 
  276. |> Grtz John
  277. |> 
  278. |> -----------------------------------------------------------------------
  279. |>  John.Hendrikx@grafix.xs4all.nl   TextDemo/FastView/Etc... development
  280. |> -----------------------------------------------------------------------
  281. |> -- Via Xenolink 1.985B5, XenolinkUUCP 1.1
  282. ------------------------------------------------------------------------
  283.    fischerj@Informatik.TU-Muenchen.DE (Juergen "Rally" Fischer)   =:)
  284.  
  285.