Challenge #840 (26/07/19) Entries CLOSED

You could try and get a good glass shader for eevee lol

1 Like

What a coincidence, I actually wanted to make this shot a dirty window pov, but I hit a wall trying to figure out the cracked dusty window material, the reflective light probe and volumetrics at the same time.

1 Like

Industrial Park. Used a couple built in add-ons (dynamic sky and sapling tree gen).


based off an image I found online.

2 Likes

The Two Towers

Open entry. Sky image created from two images from the internet. Sapling Tree Gen addon used for the tree and shrubs.

I thought I would finish this one rather quickly, but then spent hours on creating smoke, which I’m still not satisfied with. Luckily, there is a time limit for these weekend challenges. Otherwise, I would keep creating smoke, which is definitely not good for my health. :wink:

5 Likes

Industrial Pizza Machine.


Pure entry, 2048 x 1536, 1024 samples, 100% procedural textures.

5 Likes

Very nice and useful!

I would like 24 frets and proportional spacing as well as borders for possible better visualization on screen.

Here is a modified chords.js exemplifying such changes for your consideration:

var notes = ['C', 'C#', 'D', 'D#', 'E', 'F', 'F#', 'G', 'G#', 'A', 'A#', 'B'];

var strings = [{note: 4, octave: 0}, {note: 9, octave: 0}, {note: 2, octave: 1}, {note: 7, octave: 1}, {note: 11, octave: 1}, {note: 4, octave: 2}];

var chords = [
	{name: 'Major', sequence: [4, 7]},
	{name: 'Minor', sequence: [3, 7]},
	{name: '5th', sequence: [7]},
	{name: 'Augmented', sequence: [4, 8]},
	{name: 'Diminished', sequence: [3, 6]},
	{name: 'Suspended 2nd', sequence: [2, 7]},
	{name: 'Suspended 4th', sequence: [5, 7]},
	{name: 'Major 6th', sequence: [4, 7, 9]},
	{name: 'Minor 6th', sequence: [3, 7, 9]},
	{name: 'Dominant 7th', sequence: [4, 7, 10]},
	{name: 'Dominant 7th flat 5', sequence: [4, 6, 10]},
	{name: 'Major 7th', sequence: [4, 7, 11]},
	{name: 'Augmented Major 7th', sequence: [4, 8, 11]},
	{name: 'Diminished Major 7th', sequence: [3, 6, 11]},
	{name: 'Minor Major 7th', sequence: [3, 7, 11]},
	{name: 'Minor 7th', sequence: [3, 7, 10]},
	{name: 'Augmented 7th', sequence: [4, 8, 10]},
	{name: 'Half Diminished 7th', sequence: [3, 6, 10]},
	{name: 'Fully Diminished 7th', sequence: [3, 6, 9]},
	{name: 'Suspended 4th 7th', sequence: [5, 7, 10]}
];

var fretSpacing = 30;

//changed this line
var numberOfFrets = 24;

function init() {
	
	/*
	Guitar tuning dropdowns.
	*/
	
	var td = document.createElement('td');
	document.getElementById('tuning').appendChild(td);
	
	for(var string = 0; string < strings.length; string++) {
		td = document.createElement('td');
		document.getElementById('tuning').appendChild(td);
		td.id = 'td' + string;
		
		var select =  document.createElement('select');
		document.getElementById('td' + string).appendChild(select);
		select.id = 'string' + string;
		
		document.getElementById('td' + string).appendChild(select);
		
		for(note = 0; note < notes.length; note++) {
			var option = document.createElement('option');
			option.text = notes[note];
			option.value = note;
			document.getElementById('string' + string).appendChild(option);
		}
		
		document.getElementById('string' + string).value = strings[string].note;
		document.getElementById('string' + string).onchange = displayChord;
	}
	
	td = document.createElement('td');
	document.getElementById('tuning').appendChild(td);
	
	
	
	
	/*
	Chord selection dropdowns.
	*/
	
	for(var note = 0; note < notes.length; note++) {
		var option = document.createElement('option');
		option.text = notes[note];
		option.value = note;
		document.getElementById('notes').appendChild(option);
	}
	
	for(var chord = 0; chord < chords.length; chord++) {
		var option = document.createElement('option');
		option.text = chords[chord].name;
		option.value = chord;
		document.getElementById('chords').appendChild(option);
	}
	
	document.getElementById('notes').onchange = displayChord;
	document.getElementById('chords').onchange = displayChord;
	
	
	
	
	/*
	Guitar frets and notes.
	*/
	
	var guitar = document.getElementById('frets');

	// added this line
	var fretPadding = 90;
	
	for(var fret = 0; fret <= numberOfFrets; fret++)
	{		
		var tr = document.createElement('tr');
		guitar.appendChild(tr);
		tr.id = 'fret' + fret;

		td = document.createElement('td');
		td.className = 'frets';
		td.innerHTML = fret;
		document.getElementById(tr.id).appendChild(td);

		for(var string = 0; string < strings.length; string++)
		{
			var td = document.createElement('td');
			document.getElementById('fret' + fret).appendChild(td);
			td.id = tr.id + 'string' + string;

			td.className = 'notes';
		}

		// added this line and the next two
		document.getElementById(td.id).style.paddingTop = fretPadding + "px"; 
		document.getElementById(td.id).style.paddingBottom = fretPadding + "px"; 
		fretPadding -= 3;

		td = document.createElement('td');
		td.className = 'frets';
		td.innerHTML = fret;
	    document.getElementById(tr.id).appendChild(td);
	}
	
	
	
	
	
	displayChord();
}

function displayChord() {
	displayChordNotes(document.getElementById('notes').value, chords[document.getElementById('chords').value].sequence);
}

var currentNote;
var displayNote;

function displayChordNotes(note, sequence) {
	for(var string = 0; string < strings.length; string++)
	{
		strings[string].note = parseInt(document.getElementById('string' + string).value);
		
		for(var fret = 0; fret <= numberOfFrets; fret++)
		{
			displayNote = false;
			
			currentNote = (strings[string].note + fret) % notes.length;
			if(currentNote == note) 
			{
				displayNote = true;
			}
			
			for(interval = 0; interval < sequence.length; interval++) 
			{
				if(currentNote == (parseInt(note) + parseInt(sequence[interval])) % notes.length) 
				{
					displayNote = true;
				}
			}
			
			if(displayNote == true) 
			{
				document.getElementById('fret' + fret + 'string' + string).innerHTML = notes[(strings[string].note + fret) % notes.length];
			} 
			else 
			{
				//changed this line
				document.getElementById('fret' + fret + 'string' + string).innerHTML = '&nbsp;';
			}
		}
	}	
}

A new variable was created along with some style insertions at key points (wanted to do it at TR but got it to work at TD).

Style could be pushed even further. The nbsp (non-breakable spaces) are added in order to preserve vertical spacing in the table if no note is displayed.

Here’s a glimpse of what it looks like (frets 17-24 in the key of E):

Not bad for 10 minutes experimenting :smiley:

You can inspect modified lines by searching for the // comments.

Keep up the awesome work!

RobertT

2 Likes

cool thanks :slight_smile:

edit: uploaded a new version to my site:

http://scripts.franciscocharrua.com/javascript/guitar-chords/chords.html
http://scripts.franciscocharrua.com/javascript/guitar-chords/

:slight_smile:

1 Like

I’m cutting this real close but here’s my entry:

Catnip Factory

This entry is open, as I used bolts from my kitbashing file and various textures.

4 Likes

Hi, this is my entry. sadly had obligations and as such i did not have much time. Pure (unfinished) entry, except the HDRI background from HDRIHeaven.com.

2 Likes

What? Why are the entries already closed? The forum’s built in time zone calculator says that they will close today at 12:30 Warsaw time, and right now it’s 11:14 in Warsaw :C
@Helge whay is that?

You’re all missing out on a real treat :smiley:

This may seem strange, but it is caused by the 12-hour clock (AM/PM system). Every Monday, the challenge closes at 22:30 GMT. In your (and my) time zone this is 00:30 on Tuesday morning. On the 12-hour clock system, this is called 12:30 AM. In a few minutes it will be 12:30 PM. So that’s what is causing the confusion. I hope that makes sense. :slight_smile:

Oh… Yeah, that’s true. I didn’t notice that :confused: Well, I guess It’ll just have to land in the skechbook then

After the fact, but It’s here!
“Industrious”, because I don’t have a better idea for a name :smiley:

Pure, 5000 samples, Bender 2.79

I guess it could be called “An artistic representation of my computer after this 5000 sample render”. Sounds kinda catchy.

I hope you like it! :smiley:

8 Likes

Could call it " the smelting pot". :grin: