Skip to content

Commit

Permalink
added manual
Browse files Browse the repository at this point in the history
  • Loading branch information
jehovahsays committed Apr 29, 2024
1 parent a272888 commit e4d2b9f
Show file tree
Hide file tree
Showing 4,427 changed files with 3,848,672 additions and 0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
44 changes: 44 additions & 0 deletions about.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<br>
<a href="./index.html#en/webgpu_custom_fog">Homepage</a><br>

<H3>Free Webmaster Demo's and Downlaod's</H3>
For educational purposes only elaborations are listed below<br>
<a href="./manual/index.html#en/webgpu_custom_fog">manual demo</a><br>
Search for word creates webpage for that word<br>
displays search results page with link to that word on webpage.<br>
new features will be added in next zip download.<br>
you need webserver pages have php html css js.<br>
<a href="#">manual.zip</a></br>


Welcome to the About page<br>
Prerequisites:<br>
You will need a open source stand alone webserver<br>
the web pages contain php html css js.<br>
Be brave and explore the files and folders<br>
Yes, you can edit all of this code on every page.<br>
-----------------<br>
I built this website offline with random open source projects<br>
and many other cool sources of clean code.<br>
on my iphone on offline wifi network<br>
some of these things work offline.<br>
my iphone is Iphone SE<br>
up to date IOS 17.4.1<br>
I downloaded a php server combined with web server app named phpwin.<br>
I always focus on programing <br>
web based stand alone <br>
servers<br>
applications<br>
ect.<br>
-----------------<br>
i am always testing the capabilities of my website in developer mode.<br>
-----------------<br>
application: stand Alone <br>
source code: open-source<br>
mode: developer mode <br>
-----------------<br>
communication<br>
web accessibility<br>
data information visualization<br>
-----------------<br>
183 changes: 183 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,183 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>manual</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
<link type="text/css" rel="stylesheet" href="./manual/en/main.css">
</head>
<body>
<div id="info">
<a href="./manual/index.html#en/webgpu_custom_fog" target="_blank" rel="noopener">Start Game</a><br>
when you search a keyword <br>
manual writes that keyword onto an html page <br>
that html page is named that keyword you searched.<br>
in future update i will automate manaul to<br>
automatically add newest keywords to the sidebar menu.<br>

<center>
<iframe src="https://www.youtube.com/embed?listType=playlist&list=PLwMe8hyy9osJ12XuqlqRcsPQ1qkOMt9O8&si=eeYl2_GhE_kXMb62&autoplay=1" width="150" height="100" frameborder="20"></iframe>
</div>

<script type="importmap">
{
"imports": {
"three": "./manual/build/three.module.js",
"three/addons/": "./manual/jsm/",
"three/nodes": "./manual/jsm/nodes/Nodes.js"
}
}
</script>

<script type="module">

import * as THREE from 'three';
import { color, fog, float, positionWorld, triNoise3D, positionView, normalWorld, uniform, MeshPhongNodeMaterial } from 'three/nodes';

import WebGPU from 'three/addons/capabilities/WebGPU.js';
import WebGL from 'three/addons/capabilities/WebGL.js';

import WebGPURenderer from 'three/addons/renderers/webgpu/WebGPURenderer.js';

import { OrbitControls } from 'three/addons/controls/OrbitControls.js';

let camera, scene, renderer;
let controls;

init();

function init() {

if ( WebGPU.isAvailable() === false && WebGL.isWebGL2Available() === false ) {

document.body.appendChild( WebGPU.getErrorMessage() );

throw new Error( 'No WebGPU or WebGL2 support' );

}

camera = new THREE.PerspectiveCamera( 45, window.innerWidth / window.innerHeight, 1, 600 );
camera.position.set( 30, 15, 30 );

scene = new THREE.Scene();

// custom fog

const skyColor = color( 0xf0f5f5 );
const groundColor = color( 0xd0dee7 );

const fogNoiseDistance = positionView.z.negate().smoothstep( 0, camera.far - 300 );

const distance = fogNoiseDistance.mul( 20 ).max( 4 );
const alpha = .98;
const groundFogArea = float( distance ).sub( positionWorld.y ).div( distance ).pow( 3 ).saturate().mul( alpha );

// a alternative way to create a TimerNode
const timer = uniform( 0 ).onFrameUpdate( ( frame ) => frame.time );

const fogNoiseA = triNoise3D( positionWorld.mul( .005 ), 0.2, timer );
const fogNoiseB = triNoise3D( positionWorld.mul( .01 ), 0.2, timer.mul( 1.2 ) );

const fogNoise = fogNoiseA.add( fogNoiseB ).mul( groundColor );

// apply custom fog

scene.fogNode = fog( fogNoiseDistance.oneMinus().mix( groundColor, fogNoise ), groundFogArea );
scene.backgroundNode = normalWorld.y.max( 0 ).mix( groundColor, skyColor );

// builds

const buildWindows = positionWorld.y.mul( 10 ).floor().mod( 4 ).sign().mix( color( 0x000066 ).add( fogNoiseDistance ), color( 0xffffff ) );

const buildGeometry = new THREE.BoxGeometry( 1, 1, 1 );
const buildMaterial = new MeshPhongNodeMaterial( {
colorNode: buildWindows
} );

const buildMesh = new THREE.InstancedMesh( buildGeometry, buildMaterial, 4000 );
scene.add( buildMesh );

const dummy = new THREE.Object3D();
const center = new THREE.Vector3();

for ( let i = 0; i < buildMesh.count; i ++ ) {

const scaleY = Math.random() * 7 + .5;

dummy.position.x = Math.random() * 600 - 300;
dummy.position.z = Math.random() * 600 - 300;

const distance = Math.max( dummy.position.distanceTo( center ) * .012, 1 );

dummy.position.y = .5 * scaleY * distance;

dummy.scale.x = dummy.scale.z = Math.random() * 3 + .5;
dummy.scale.y = scaleY * distance;

dummy.updateMatrix();

buildMesh.setMatrixAt( i, dummy.matrix );

}

// lights

scene.add( new THREE.HemisphereLight( skyColor.value, groundColor.value, 0.5 ) );

// geometry

const planeGeometry = new THREE.PlaneGeometry( 200, 200 );
const planeMaterial = new THREE.MeshPhongMaterial( {
color: 0x999999
} );

const ground = new THREE.Mesh( planeGeometry, planeMaterial );
ground.rotation.x = - Math.PI / 2;
ground.scale.multiplyScalar( 3 );
ground.castShadow = true;
ground.receiveShadow = true;
scene.add( ground );

// renderer

renderer = new WebGPURenderer( { antialias: true } );
renderer.setPixelRatio( window.devicePixelRatio );
renderer.setSize( window.innerWidth, window.innerHeight );
renderer.setAnimationLoop( animate );
document.body.appendChild( renderer.domElement );

// controls

controls = new OrbitControls( camera, renderer.domElement );
controls.target.set( 0, 2, 0 );
controls.minDistance = 7;
controls.maxDistance = 100;
controls.maxPolarAngle = Math.PI / 2;
controls.autoRotate = true;
controls.autoRotateSpeed = .1;
controls.update();

window.addEventListener( 'resize', resize );

}

function resize() {

camera.aspect = window.innerWidth / window.innerHeight;
camera.updateProjectionMatrix();

renderer.setSize( window.innerWidth, window.innerHeight );

}

function animate() {

controls.update();

renderer.render( scene, camera );

}

</script>
</body>
</html>
54 changes: 54 additions & 0 deletions index.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
<?php
header_remove( 'X-Powered-By' );
header( 'Cache-control: none, no-cache, private, max-age=0' );
header( 'Pragma: no-cache' );
header( 'Content-Type-Options: nosniff' );
header( 'X-Content-Type-Options: nosniff' );
header( 'XSS-Protection: 1; mode=block' );
header( 'X-XSS-Protection: 1; mode=block' );
header( 'Vary: Accept-Encoding' );
header( 'viewport: width=device-width, initial-scale=1.0' );
header( 'Accept-Language: en-US,en;q=0.5' );
header( 'Connection: Keep-alive' );
header( 'Host: manual' );
header( 'description: manual' );
header( 'keywords: manul' );
header( 'Vary: Accept-Encoding' );
header( 'Expires: 0' );
header( 'Referrer-Policy: no-referrer' );
header("Location: ./index.html");
?>
<!DOCTYPE html>
<!--
secured
-->
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=Edge;chrome=1">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="viewport" content="width=device-width, initial-scale=0.56, maximum-scale=0.56, user-scalable=no">
<meta http-equiv="Cache-Control" content="private, no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<link rel="icon" type="image/png" href="favicon.ico">
<title>manual</title>
</head>
<body>
<!<body onload="secured()">
<script>
"use strict";
/* global Peer */
/**
secured
**/
function secured() {
alert("secured");
}
</script>
<!<body="button" bgcolor="black" class="pagebutton" type="button" onclick="alert('Click next to confirm command.')">
<!<body bgcolor="black">
<!<p style="color:green">
<!</button>
</body>
</html>
61 changes: 61 additions & 0 deletions manual/bridge.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
<?php

/*
======================================================================
LastRSS bridge script- By Dynamic Drive (http://www.dynamicdrive.com)
Communicates between LastRSS.php to Advanced Ajax ticker script using Ajax. Returns RSS feed in XML format
Created: Feb 9th, 2006. Updated: Feb 9th, 2006
======================================================================
*/

header('Content-type: text/xml');

// include lastRSS
include "./lastRSS.php"; //path to lastRSS.php on your server from this script ("bridge.php")

// Create lastRSS object
$rss = new lastRSS;
$rss->cache_dir = 'cache'; //path to cache directory on your server from this script. Chmod 777!
$rss->date_format = 'M d, Y g:i:s A'; //date format of RSS item. See PHP date() function for possible input.

// List of RSS URLs
$rsslist=array(
"Google" => "https://news.google.com/?output=rss",
"BBC" => "https://newsrss.bbc.co.uk/rss/newsonline_uk_edition/front_page/rss.xml",
"news.com" => "https://news.com.com/2547-1_3-0-5.xml",
"slashdot" => "https://rss.slashdot.org/Slashdot/slashdot",
"dynamicdrive" => "https://www.dynamicdrive.com/export.php?type=new"
);

////Beginners don't need to configure past here////////////////////

$rssid=$_GET['id'];
$rssurl=isset($rsslist[$rssid])? $rsslist[$rssid] : die("Error: Can't find requested RSS in list.");

// -------------------------------------------------------------------
// outputRSS_XML()- Outputs the "title", "link", "description", and "pubDate" elements of an RSS feed in XML format
// -------------------------------------------------------------------

function outputRSS_XML($url) {
global $rss;
$cacheseconds=(int) $_GET["cachetime"]; //typecast "cachetime" parameter as integer (0 or greater)
$rss->cache_time = $cacheseconds;
if ($rs = $rss->get($url)) {
echo "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n<rss version=\"2.0\">\n<channel>\n";
foreach ($rs['items'] as $item) {
echo "<item>\n<link>$item[link]</link>\n<title>$item[title]</title>\n<description>$item[description]</description>\n<pubDate>$item[pubDate]</pubDate>\n</item>\n\n";
}
echo "</channel></rss>";
if ($rs['items_count'] <= 0) { echo "<li>Sorry, no items found in the RSS file :-(</li>"; }
}
else {
echo "Sorry: It's not possible to reach RSS file $url\n<br />";
// you will probably hide this message in a live version
}
}

// ===============================================================================

outputRSS_XML($rssurl);

?>
Loading

0 comments on commit e4d2b9f

Please sign in to comment.