Pages

luni, 8 aprilie 2019

Medical demo created with Qt Design Studio.

Roger Mazzella from The Qt Company shows off our latest infusion pump demo. It was created with Qt Design Studio, Qt Safe Renderer and is running on INTEGRITY RTOS.
You can read more about Qt Safe Renderer at official webpage.

luni, 25 martie 2019

News: $40 million Fortnite World Cup

Play in 10 weekly online tournaments for a chance to win cash prizes and qualify for the Fortnite World Cup Finals.
APRIL 13 - JUNE 16 with $1 MILLION PRIZE POOL EACH WEEK!
Read more about this on the official website.

joi, 21 martie 2019

Lumina by goodboydigital.

Today I come with a web page with great graphics and a design to measure.
The web page is interactive and urges you to drive a firefly through the forest to collect light.
See the full project on the webpage.

sâmbătă, 16 martie 2019

vineri, 8 martie 2019

Heart shapes with Wolfram MathWorld.

I chose to present this resource today because it is March 8th.
There are a number of mathematical curves that produced heart shapes and you can find many tools on the web.
The author presents himself with a brief introduction:
Eric W. Weisstein began compiling scientific encyclopedias as a high school student nearly twenty years ago. Born in Bloomington, Indiana in 1969, Weisstein studied physics and astronomy at Cornell University and Caltech and received his Ph.D. from Caltech in 1996. In 1995, Weisstein took the vast collection of mathematical facts that he had been accumulating since his teenage years and began to deploy them on the early internet. These pioneering efforts at organizing and presenting online content helped define a paradigm that has subsequently been followed by other large-scale informational projects on the web.
The most important part of this resource is highlighted in a table of contents about mathematical issues:
  • Algebra
  • Applied Mathematics
  • Calculus and Analysis
  • Discrete Mathematics
  • Foundations of Mathematics
  • Geometry
  • History and Terminology
  • Number Theory
  • Probability and Statistics
  • Recreational Mathematics
  • Topology
The examples and details can be found here.
If you want to use the Wolfram Alpha syntax, there are formulas:
heart curve

marți, 12 februarie 2019

Godot : water shader example.

This is an example created by user named Gonkee in this video tutorial.
The result of this shader tutorial I tested is this:

The source code of this shader is this:
shader_type canvas_item;

// Gonkee's water shader for Godot 3 - full tutorial https://youtu.be/uhMAHpV_cDg
// If you use this shader, I would prefer if you gave credit to me and my channel

uniform vec4 blue_tint : hint_color;

uniform vec2 sprite_scale;
uniform float scale_x = 0.67;

float rand(vec2 coord){
 return fract(sin(dot(coord, vec2(12.9898, 78.233)))* 43758.5453123);
}

float noise(vec2 coord){
 vec2 i = floor(coord);
 vec2 f = fract(coord);

 // 4 corners of a rectangle surrounding our point
 float a = rand(i);
 float b = rand(i + vec2(1.0, 0.0));
 float c = rand(i + vec2(0.0, 1.0));
 float d = rand(i + vec2(1.0, 1.0));

 vec2 cubic = f * f * (3.0 - 2.0 * f);

 return mix(a, b, cubic.x) + (c - a) * cubic.y * (1.0 - cubic.x) + (d - b) * cubic.x * cubic.y;
}

void fragment(){
 
 vec2 noisecoord1 = UV * sprite_scale * scale_x;
 vec2 noisecoord2 = UV * sprite_scale * scale_x + 4.0;
 
 vec2 motion1 = vec2(TIME * 0.3, TIME * -0.4);
 vec2 motion2 = vec2(TIME * 0.1, TIME * 0.5);
 
 vec2 distort1 = vec2(noise(noisecoord1 + motion1), noise(noisecoord2 + motion1)) - vec2(0.5);
 vec2 distort2 = vec2(noise(noisecoord1 + motion2), noise(noisecoord2 + motion2)) - vec2(0.5);
 
 vec2 distort_sum = (distort1 + distort2) / 60.0;
 
 vec4 color = textureLod(SCREEN_TEXTURE, SCREEN_UV + distort_sum, 0.0);
 
 color = mix(color, blue_tint, 0.3);
 color.rgb = mix(vec3(0.5), color.rgb, 1.4);
 
 float near_top = (UV.y + distort_sum.y) / (0.2 / sprite_scale.y);
 near_top = clamp(near_top, 0.0, 1.0);
 near_top = 1.0 - near_top;
 
 color = mix(color, vec4(1.0), near_top);
 
 float edge_lower = 0.6;
 float edge_upper = edge_lower + 0.1;
 
 if(near_top > edge_lower){
  color.a = 0.0;
  
  if(near_top < edge_upper){
   color.a = (edge_upper - near_top) / (edge_upper - edge_lower);
  }
 }
 
 COLOR = color;
}