← Back to team overview

widelands-dev team mailing list archive

Re: [Merge] lp:~widelands-dev/widelands/beautiful_correct_lines into lp:widelands

 

If you want to play around a little bit more, go for it. I will not code anymore tonight, so I will only clean this up tomorrow anyways. There are the parameters you can play with

- In the last commit I removed the code that draws the circles to connect to lines, so lines are not connected anymore. You might bring that back.
- the fuzzyness of the lines is defined through this line:
  float alpha = pow(cos(var_color.a * PI / 2), 1.5);
the corners of each line quad are alpha = 1, opposite are -1, so the shader gets a linear interpolated value between -1 and 1 across the line. This function turns that into a non linear function that defines the falloff. You can replace that or tweak the 1.5 to different values you like.
- glDepthFunction(GL_LEQUAL) vs glDepthFunction(GL_LESS) defines overdraw behavior for overlapping lines. If two lines overlap, it defines if the second lines pixel are drawn over the first line pixels or not - that obviously only makes a difference if the pixel is partially transparent. 
- The thickness of the lines in the plot area. 

It might help to bring back this line in graphic:

screen_->draw_line_strip(
		{FloatPoint(20, 300), FloatPoint(700, 500), FloatPoint(250, 50)}, RGBColor(255, 0, 0), 30, LineDrawMode::kAntialiased);

directly before:
	RenderQueue::instance().draw(screen_->width(), screen_->height());

It draws a big fat line across your screen that is much bigger than any we use in Widelands, but it gives you a feeling for your parameters. 

It is fun to play around with that, but I did it too much now. Maybe you find better parameters. 
-- 
https://code.launchpad.net/~widelands-dev/widelands/beautiful_correct_lines/+merge/284517
Your team Widelands Developers is subscribed to branch lp:~widelands-dev/widelands/beautiful_correct_lines.


Follow ups

References