Newbie Grass Question

Blitz3D Forums/Blitz3D Beginners Area/Newbie Grass Question

CodeOrc(Posted 2008) [#1]
Hi All,


I am trying to populate a 3D Max exported Terrain Mesh with lots of grass via code.

gem = CreateSprite()
SpriteViewMode gem,1
grass_tex=LoadTexture("./static/grass_green3.png",2)
ScaleSprite gem,4,3
EntityTexture gem, grass_tex
HideEntity gem
EntityPickMode terr,

For ll = 1 To 1500
  ccx# = Rand(30,360 )  
  ccz# = Rand(126,385 )
  cccopy = CopyEntity( gem )
  LinePick ccx, 2100, ccz, 0,-22120,0
  PositionEntity cccopy, ccx,PickedY()+2, ccz
Next 
EntityPickMode terr,0


As you can see I am using 1500 grass pcs, but I really need 5000, but performance takes a plunge.

So what do all of you other Blitzerz' do for grass ?

thx :)


puki(Posted 2008) [#2]
Normally, you would do your grass in grids - effectively look-up tables for more grass.

You can buy a system for $12 USD (about £7)
http://gothasoft.com/Software/ProductGrasspartyBE/tabid/105/Default.aspx


CodeOrc(Posted 2008) [#3]
I have grass party, but after 1k in grass, it seems to lagg really bad also.

I even emailed them asking why the code says it will support 120k grass objects but suffers after 1k and of course no response.

My sys specs are not that bad (2.6 Intel, 2gig ram, N-7600 GS), so I don't really understand why the lagg is appearing.

I tried a separate exe with just a terrain and grass without ANY game routines to see if it was my game, but still same problem.


puki(Posted 2008) [#4]
From memory, Grassparty is a real juggling act. You have to make sure that it's own debug mode is not active - you have to balance ExtendedView and ExtendedViewMulti - plus AddViewDist and AddAnimDist - plus the LoadPerCycle

Pretty much a faffing about juggling act to get it right.

I seem to remember pushing the grass to 500,000 okay. However, if the above mentioned are not balanced then it can, as you say, lag.


Nate the Great(Posted 2008) [#5]
I just use a good texture for the ground and only make grass when it gets close to you by linepicking down to place the grass. This is a good effect if it is done right. :)