simple Q - rendering loop

Started by
1 comment, last by dazscott 18 years, 8 months ago
Is it ok in c# to declare primitive variables and loop control variables inside a render loop, or does this eat memory? the code below for example, which just outputs some text to the screen. Is the new Rectangle(...) part going to create a new memory location each time the code is executed, or will it be done only once.
//to draw text inscreen co-ordinates
		private void Draw2DText(string text,Color c,float pos)
		{
			
			int x = this.Width/22;
			float y = (float) this.Height/pos;

			int yInt = (int) Math.Round(y,0);

			font.DrawText(textSprite, text, new Rectangle(x, yInt, 
			this.Width , this.Height ),
			DrawTextFormat.NoClip | DrawTextFormat.ExpandTabs |
			DrawTextFormat.WordBreak , c);
			
		}
Advertisement
Quote:
the code below for example, which just outputs some text to the screen.
Is the new Rectangle(...) part going to create a new memory location each time the code is executed, or will it be done only once.

Yes, every time you use new, it will make a memory allocation. Of course, since you are using C# it will automagically be garbage collected.

Quote:Original post by dazscott
Is it ok in c# to declare primitive variables and loop control variables inside a render loop, or does this eat memory?

Primitives will be allocated on the stack, so yes they do eat memory, but it is really negligable. Sometimes it's just necessary.
Dustin Franklin ( circlesoft :: KBase :: Mystic GD :: ApolloNL )
yeah thats what I expected, The garbarge collector seems to be handling thinks ok for now at least.

thanks for the reply

This topic is closed to new replies.

Advertisement