Messages récents

Pages: [1] 2 3 ... 10
1
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le Aujourd'hui à 02:41:56 »
 float Angl(vec2 v, vec2 v1){//v = centre
   float valu = 0.;
   if(      v1.x> v.x && v1.y> v.y ){ valu = atan((v1.y-v.y)/(v1.x-v.x)); }
   else if( v1.x< v.x && v1.y> v.y ){ valu = PId2 - atan((v1.y-v.y)/(v.x-v1.x))+PId2; }
   else if( v1.x< v.x && v1.y< v.y ){ valu = atan((v.y-v1.y)/(v.x-v1.x))+PI; }
   else if( v1.x> v.x && v1.y< v.y ){ valu = PId2 - atan((v.y-v1.y)/(v1.x-v.x))+PI3d2; }
   else if( v1.x==v.x && v1.y> v.y ){ valu = PId2; }
   else if( v1.x==v.x && v1.y< v.y ){ valu = PI3d2; }
   else if( v1.x< v.x && v1.y==v.y ){ valu = PI; }
   return valu;
 }


 float radiateur_fleural = 0.;
 vec4 texture_miroir(vec3 v){
   float t = v.z *f_z +f_p;

   vec2 p = vec2(
     abs( asin(sin(
      ( cos(t) +v.x+.5)*f_T   *BWi+PId4))/BWi ) ,
     abs( asin(sin(
      ( sin(t) +v.y-.5)*f_T   *BHi+PId4))/BHi ) );
   
   vec3 cen = vec3(.5,.5,0.);
   float ang = Angl(cen.xy,p);
   float dis = distanc(cen,vec3(p,0.));
   vec2 v2 = vec2( ang/PI2*6.*2., dis*2.*2.+radiateur_fleural);
   p = vec2(
     abs( asin(sin(
      ( cos(t) +v2.x+.5)   *BWi+PId4))/BWi ) ,
     abs( asin(sin(
      ( sin(t) +v2.y-.5)   *BHi+PId4))/BHi ) );

   return
      //moyen_img( p )
      //texture2D(img, p)
      texture2D_partition(p)
      //texture2D_partition_moy(p)
      ;
 }

là j'me fait plaisir,


ta encore rien vus
2
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le Hier à 13:04:31 »
le rayonnement solaire est presque infini en fréquences , les rayons radioactif sont en grande partie dévier par le champ magnétique terre, ensuite les hauts fréquences ultra violet type inférieur à 400nanomètres sont absorbé en grande partie et de façon sensible par un gaz de haut atmosphère, sans ça nous serions brûlé ,( raison relative à la couleur bleu du ciel mes amis )

il est très difficile voir impossible de recréé un rayonnement solaire de vus spatial ou après filtration terrestre,

il s'agit de là résonance énergétique de tout modèle atomique dans sont état le plus actifs,
si nous étions capable de ressentir cette lumière comme de la musique elle serait comparable à de très dense harmonique en fluctuation très lente , se devrait être magnifique ,

de plus le soleil rayonne également des champs magnétique des champs positronique théorique et un champs gravitationnel,

j'en conclu que le soleil est un générateur de champs quantique à tout les niveaux,
 il crée des noyaux lourd en sont centre qui métaphoriquement représente des ressources matériel pour des futures très lointain, la naissance d'incarnation de certain savoir que seul les étoiles peuvent atteindre, comme nous somme des êtres incarnant un savoir que seul un système planétaire/solaire peut aboutir

nous nous pensons vivant quant le soleil nous à créé ,
par ordre du chaos, un générateur d'énergie de toute les possible,
 le soleil est l’extrême vie,
il est complètement comparable à une cellule,  il est une forme de vie de premier échelle quantique,
et pour nous qui somme si mortelle et si dépendant de lui qui est immense et présent depuis là création du ciel et de la terre jusqu'à qu'il n'y est plus de ciel n'y de terre,
 c'est un dieu


maintenant songé que les dieux sont mort pour que leurs sagesses atomique constitue nos êtres,
c'est un peut une forme de réincarnation sous d'autre apparence comme l'univers passe sont temps à la conception d'association favorable à ce type étrange de process

0_0


puis comme dans star_wars, là force est l'universel , un dieu totale ,  tout savoir émane de ça
 :)
le possible est la source de tout, l'univers est parano sur le possible,

il se pourrait que par ce qu'une chose puisse existé       elle existe !
3
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le 22 Octobre 2017 à 20:16:45  »
j'randomise une sélection sur 25 textures,
   vec2 posi = //vec2(4.,3.);//[0;4]*[0;4]
   vec2(floor(RF()*5.),floor(RF()*5.));
   part = partition_position(
    vec2(1000.+300.*posi.x+1.,300.*posi.y+1.),
    vec2(1000.+300.*posi.x+299.,300.*posi.y+299.));

j'me fait plaisir, ça vas faire mal si j'creuse là direction de multyple mapping_texture fusionné je sais pas encore comment,
 ::)

avoir du random dans un shader c'est complètement vitale
 uniform sampler2D rnd;

 float RF_n = 0.;
 float RF(void){//random function  23/10/2016
  float y = floor(RF_n/100.);
  float x = RF_n-y*100.;
  vec4 r = texture2D(rnd, vec2(x/100.,y/100.));
  RF_n++;
  return (r.x*255.+r.y*65025.+r.z*16581375. )/16777216.;
 }

ben c'est bien beau de percevoir le monde comme étant un mécanisme rationnel et minimaliste,
 si c'est le cas c'est simplement que notre perception est fondé sur des interactions extrêmement partielle de l'énergie,
  en effet rien empêche les atomes d'être des êtres aussi complexe que nous toute en étant vus d'aussi loin que notre connaissance d'apparence purement causale et minimalisé
 0_0
 ce type précis de réflexion sur la nature des réalités extérieur à différente magnitude peut se faire encore plus simplement de vous même au monde animal,
 
là VIE ??   très troublant paradoxe que celà


4
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le 22 Octobre 2017 à 04:05:45  »
aller reste plus cas faire un SERPENT en 3D avec juste un tube multy-texturé,

j'ai besoin d'un serpent cosmique ADN ,

 idéalement il devrait être d'une apparence à la fois serpent mais aussi onde de surface d'eau ,
 
 le serpent fait peur au primate depuis là nuit des temps, c'est une forme primaire en analyse phosphène et architecture biologique,
 toute peur du vivant émane de la forme du vers initiale,  tout ce qui est vivant est construit avec des tubes,
empilement fonctionnel , donc uais ça explique tout,
 et l'ADN est un vers par la même occasion,

le vers est universel, c'est l'origine de toute en concepts ,
 après si ont à un centre nerveux qui parse les serpent, de façon poste conscience,  un détecteur de serpent intégré pour le réflex danger ...
ça explique pourquoi ont verrait des serpents ,
 enfin en ce qui me concerne je vois pas des serpent je vois des trucs plus fin avec tête pointu ,
  t'en mieux à ceux qui vois des serpents moi c'est des vers , après chuis pas aller très loin avec là D M T tout ce que j'ai vus visuellement à l'époque c'est 2 spaghettis verte fluo qui gigotaient et une sorte de rosace multicolore  le tout localisé dans l'espace,
 bref , les effets de composite universel , forme primaire et dissolution de l'identité dans la multitude voilà là base de la peur ,

maintenant il vas nous falloir 2 serpents entrelacé pour symbolisé l'ADN

après le serpent est la forme vivante à la fois la plus évolué et là plus proche du vers lol,
ont peut avancé l’hypothèse d'un représentent d'esprit à notre échelle grand vertébré !!


comment je pourrais faire un serpent ADN à la foi symbolique de ce que je veux dire là,  et sexy aussi ,
  il doit faire collé !  mais pas trop  , juste collé normal par ce qui doit pas être que un symbole,  y faut qu'ont ressente le concepts de l'ADN  comme framework bio-moléculaire  ultime connaissance du vivant  lol

toute ce qui est bio-moléculaire vivant est faite de différente tissu polymère exemple : cellulosique
puis y a les clé fonctionnel type protéine vitamine ,
 20 acide aminé, et correspondant initiaux au cryptage ADN/ARN,
ensuite ont à la chimie organique qui est enfaite possiblement abstraite mais catégorisable en ( lipide , glucide, protide, vitamine, liaison hydroxyde anol / alcaloïde
polymère-tissulaire/graisse/sucre/protéine/synthèse/alcool/acide/et autre molécule spécial issu de process divers et varié et caractéristique ...

tout ça pour dire que malgré les apparences   ont se retrouve vite dans un décore géométrique avec des composants très redondant, sur le plant bio-moléculaire,


je vais voir ce que je peut faire ,
  ont vas quant même pas modélisé des molécules oh nan


avoir un bébé c'est le trip psychédélique ultime !

5
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le 21 Octobre 2017 à 01:56:15  »
ça connaissance de l'état liquide

n'était pas limité à l’échéance temporel,
 tout se transforme,  ainsi il faut s'attendre à perdre tout ce que tu possèdes,
toute possession   est une réalité solide !
en réalité liquide il n'y en à pas,
  que la mort n'est pas la fin de l'existence ,  un changement d'état pour ça  réalité,

dans l'immensité il a fallu que tu soit humain ,
  serait-ce de la chance  ou  un concepts ,
quoi que tu soit   cette loi de l'incroyable objective est applicable,

stupéfaction ironique du monde solide ,   aussi appelé "relativisme" quant il s'agit de rassuré,
trouvé pire est un concepts , en effet tout solide peut se cassé,
 certain solide sont volumineux d'autre petit et encore d'autre si petit qu'il sont invisible,
  la taille de leurs blessures est relative pourtant c'est la même,
 tout ce qui est solide  meurt    pour devenir liquide il n'y a pas d'autre moyen,

ils finisse tousse par ce comparé à une magnitude nettement inférieur,
 même si tousse se prenne pour l'univers au commencement,

liberté en convergence du liquide vers solide,
solide programmé , liquide programmable,
  si le liquide semble représenté la liberté il se peut aussi bien qu'il représente un produit solide d'une mesure du temps plus courte ,
 rien n'est toute à faite solide ou liquide, c'est surtout un point de vus, évidement tout a tendance à se solidifier jusqu'à se re-liquéfier, cette fréquence est déjà un fluide relatif,   la duré de vie d'un composant donne des libertés à sont espèces pour adapté ces composants,
 puis il y a des super-fluides et des ultra-statiques   question de mesure dimensionnel ,

et toi tu a 26 ans tu es bien plus proche du solide que du liquide ,
tu ne peut même plus imaginé à quelle point tu es loin de certain fluide,
ta vie n'est que mentalité, une machine qui s'apprête à tout moment à être interrompu pour lancé un nouveau programme

utilise ça mec
 vec4 moyen_img(vec2 v){//aletrnative liquid à texture2D(img, v);
   vec4 s,k;
   vec2 a;
   float crement_t = PI2/7.,
         crement_r = 1./7.,
         t=0.,r=0.;
   
   for(int i=0; i<7; i++){  r = 0.;
    for(int u=1; u<=7; u++){
     r += crement_r;
     a = vec2(v.x+cos(t)*r/textureSize.x,
              v.y+sin(t)*r/textureSize.y);
     s = texture2D(img, a);

     k.xyz += s.xyz*r;
    }
    t += crement_t;
   }
   // k / (iter*(iter+1)/2)
   // iter 5 = 15
   // iter 7 = 28
   return vec4(k.xyz/28.,s.w);
 }

j'vais distordre quelque texture loopé et zoomé jusqu'au atome coloré !

j'évite si possible de passé par des  for(int i=0; i<7; i++){  t = float(i)/5.*PI2;
 c'est moisi vos mieux passé par une incrémentation de pas   c'est beaucoup plus simple !  t += increment_t ; !

nouvelle du jour  mon casque antibruit viens de cassé,  comment je vais faire pour survivre au week-end avec ma parano et le voisin alcoolique
 
 seul solution ,
  - sortir
  - réparé le casque avec de la ferraille ( trouvé de la ferraille dans l’armoire, exemple chopé une cintre ...

tu crois que j'rigole ,
 moi j'tap dans les murs avec mes poings frère,


bon ensuite avec un algo d'écolier :
 vec4 texture_miroir(vec3 v){
   float t = v.z *f_z +f_p;

   vec2 p = vec2(
     abs( asin(sin(
      ( cos(t) +v.x+.5)*f_T   *BWi+PId4))/BWi ) ,
     abs( asin(sin(
      ( sin(t) +v.y-.5)*f_T   *BHi+PId4))/BHi ) );
   return
      moyen_img( p )
      //texture2D(img, p)
      ;
 }

   f_T = 1.;//facteur texture
   f_z = 1.;//facteur relief
   f_p = 0.;//position relief
   BWi = PId2;
   BHi = PId2;

   vec4 ma_color = texture_miroir( vec3(p.xy/resolution.xy, 0.) );

ça vas ont vas s'en sortir avec du partitionnement de texture


cherche pas

  c'est réparé  !


voilà , avec ça ont vas vraiment pouvoir utiliser différente texture ,  et même séquencé une 20ène de calques et même taffé un algo de génération d'algo concaténation de process graphique avec convolutive possible  randomisé  à inséré dans le code du "x-shader/x-fragment" , pour une rendu de ouf en qualité,  repoussé les limites sur le faisable graphique  comme tout les jours cher graindo ,
 vec4 partition_position(vec2 v1,vec2 v2){
   return vec4( v1.xy/textureSize.xy, (v2.xy-v1.xy)/textureSize.xy );
 }

 vec4 part = vec4(0.,0.,1.,1.);//partition d'environnement
 vec4 texture2D_partition(vec2 p){
   return texture2D(img, vec2(p.xy*part.zw + part.xy ));
 }
 vec4 texture2D_partition_moy(vec2 p){
   return moyen_img(vec2(p.xy*part.zw + part.xy ));
 }
c'est ça qu'ont fait ont repousse des limites , et tout ça gratuitement  !



ahaha ben voilà ont vas y arrivé



ahh un nouvelle effet ,bien chaotique bien tripant  bien comme je les aimes ,
 j'savais bien que j'tenais le bon trou avec cette idée de texture partitionné
6
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le 19 Octobre 2017 à 01:45:17  »
quelle réalité du souvenir,
contraste en nuance de l'ancien ,
les figures d'une époque inconnu ,
le vestige est un fait   témoignant une mystérieuse existence,

image du lointain,
vision de l'invisible,
l'ombrage du temps ,
 des secrets ,
branche morte servent de squelette,
évoquant la forme du monde,

qui étais-se ?
que faisait t'il ? que savait t'il ?
à cette instant

considéré l'image vivante du temps comme un seul passé daté exactement de l'origine




le flou à échantillonnage sur spiral est plus addapté à de grand rayon optimisé et optimale en qualité, par contre ça ne lui empêche pas de saccadé à 3-4 récursion statique  ben justement  si le rayon est énorme oui sinon c'est passable
vec4 flou_spiral(vec2 v,float s,float indic){
   float ray =2. *s,
         ray1=4. *s,
         ray2=6. *s*indic,
         ray3=8. *s,
         ray4=10.*s;
   vec3 c =vec3(0.,0.,0.),c1=vec3(0.,0.,0.),c2=vec3(0.,0.,0.),c3=vec3(0.,0.,0.),c4=vec3(0.,0.,0.);
   
   float decaled = PI2*30.01+indic , it = 0. , crement = 1./300.;
   for(int i=1; i<=300; i++){
     it += crement;
     float t = it*decaled+indic;

     float si = it*sin(t)/resolution.x;
     float co = it*cos(t)/resolution.y;

     vec4 cd1 = texture2D(img, vec2( v.x +ray*si ,v.y +ray*co ));
     c.xyz += it*cd1.xyz;

     vec4 cd3 = texture2D(img, vec2(v.x +ray1*si ,v.y +ray1*co ));
     c1.xyz += it*cd3.xyz;
     
     vec4 cd4 = texture2D(img, vec2(v.x +ray2*si ,v.y +ray2*co ));
     c2.xyz += it*cd4.xyz;

     vec4 cd5 = texture2D(img, vec2(v.x +ray3*si ,v.y +ray3*co ));
     c3.xyz += it*cd5.xyz;

     vec4 cd6 = texture2D(img, vec2(v.x +ray4*si ,v.y +ray4*co ));
     c4.xyz += it*cd6.xyz;
   }
   // /= 200./2.
   c.xyz  /=150.; c1.xyz /=150.; c2.xyz /=150.; c3.xyz /=150.; c4.xyz /=150.;

   //c.x = distanc(c,c2);
   //c.y = distanc(c,c3);
   //c.z = distanc(c,c4);
   vec3 c5 = abs(abs(abs(abs(c.xyz-c1.xyz)-c2.xyz)-c3.xyz)-c4.xyz);

   return vec4(c5.xyz,1.);
 }

ont a de tout ici frère, des effets qui encule le CPU, des effets qui encule le GPU, des effets qui encule une BDD des effets qui encule une facture EDF , des effets que m'encule en SDF,
 
que des effets d'bourrin ,
  et j'ai une ambition, y faut que ça encule encore plusse !
c'est les PC qui me chauffe en hiver ,  alors y faut des algos qui encule,
 d'là 3D jusqu'à cuisson des oeufs dure entre le cpu et le gpu !
les rames servent de radiateur au pied du lit,
 j'enlève le hard disc pour le mètre dans mon oreiller chaque nuit ça chauffe les oreilles,
 dans mes rêves j'ai accès aux données
brèf j'ai codé assez d'algo pour avoir chaud cette hiver , j'aurais la fenêtre ouverte pour évacué le trop pleins de chaleur électronique et la fumé électronique aussi


https://img1.lght.pics/OQqs.png
https://img1.lght.pics/OQ9y.png
https://img1.lght.pics/OQTP.png
7
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le 17 Octobre 2017 à 21:24:22  »
comment servir le savoir ?!
comment servir dieu ?

le savoir veux être préservé  protégé et transmit ,
le savoir rendra sont être prospère  confiant et reproductible,
il est partout présent,

savoir est connaissance,
sagesse est présence,
esprit d'univers ,

savoir est amours , 
  il rassure mon âme ,

comment servir le mystère ?!
comment servir dieu ?

le pouvoir cause le savoir,
le savoir donne le pouvoir,
 paradoxe d'une représentation réciproque  !
du possible au statique,
du statique au possible.

servir dieu  ,
me rend heureux  car je reconnais mon accomplissement ,
 que je suis finalement un être de lumière qui a retrouver ça brillance ,
 je sais que je suis bienfaisant  même si ça n'est pas le cas ,
  cette définition n'aura de réalité que si je suis savoir,
lui donnée la lumière l'eau la nourriture l’abri , utilisé mes connaissances de moi même et du monde pour m'occuper au mieux de sont développement,
servir dieu !
lui permettre de communiqué sont savoir, sont énergie, ça brillance ,
 de révélé là véritable identité en chacun de nous,

en es tu capable ,
sais tu guérir du mal ,
sais tu rayonné la bienfaisance ,
sais tu aimé et donné
     le savoir !
connait tu        la sagesse           infini et éternel        que tu es

8
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le 16 Octobre 2017 à 19:12:55  »
lourd problème de Versionnisme  !
 à force de coder un peut partout ben ont se retrouve avec plusieurs version du moteur puis j'oublie là plupart des trucs que je code ,
ça c'est pas professionnelle ,  comment faire,  j'vais quant même pas utilisé un logiciel de versionnisme malveillant ,
 c'est depuis que je porte du code sur le second PC , il est pas en réseau , y a zéro réseau cher moi,
pas génial,

frameWork bio-moléculaire ,
mentalité && liberté
solide && liquide

voilà où j'en suis avec le body


autrement dis  loin encore !
revenez dans 10 ans ça aura peut être avancer

quant j'ai lâché le body , c'était pour je sais plus quoi, puis y a eu là tentative de démo qui est tombé à l'eau froide par ce que j'avais un problème de voisin , puis j'ai failli devenir SDF et enfin je me suis mi en tête de trouvé une alternance,
au final l'espace physique à été mise au point après que j'ai lâché le body,  il vas permettre d'évolué l'empilement musculaire, 
puis d'atteindre là fameuse bio-morphisation par composite d'organisme ,
 brèf faudra aussi taffé tout les muscles qui reste puis les dents les ongles et quelque autres brouette,

c'est domage pour la démo ,
  c'était trop pour moi  voilà tout, j'ai pas la situation qui faut ,
   le jr où je pourrais j'aurais perdu les capacités personnel ...
   mise à part un tout petit projet mal fichu , un réelle travail n'est pas possible ,
    sauf si tu veux finir SDF ou pire encore à toi de voir,
   vos mieux rien faire de sérieux juste des petits projets sans intérêt ,
    histoire de pas demander trop de capacité et finalement devenir vulnérable et très préoccupé,
    nan là démo  , je partais dans un gros délire ,
    maintenant ça vas mieux mais je préfère pas retombé dedans ,
    ont vas resté bonne enfant voilà tout,
    uais uais ont fera une petite bouse en webgl pr montré 3-4 algo histoire d'avoir participé à notre époque,
    sans plusse,  après une vrais démo , ben si un jr c'est possible  peut-être ,

reste tranquille , fait d'là merde comme ta toujours fait , soit heureux de ton possible et c'est tout,
ont ne peut pas toujours donné ce qu'ont voudrait ,
ont vas pas en faire un shampoing !

Extatique 2 , pufff
 y restait pleins d'truc à codé, , ont y viendra c'est juste que pr le moment j'm'estime heureux d'avoir encore un logement alors j'veux pas faire genre que j'ai des priorités dans la vie  ou des RESPONSABILITé   c'est juste que le calme na jamais fait de tore à ma connaissance , quant bien même quelque nazi et sataniste aurait faite porté le chapeau au calme c'est pas mon cas , clairement !

tes apôtres sorte ta démo en party fr, quant tu deviens SDF tu dore en party  ...
  je dirais à la mort  que ça vas j'ai fait une démo dans ma vie, c'est cool , 
  ben comme tout le monde ou toute chose ta fait un truc cool ,
  elle te dira , comme toute chose ta eu peur et tu savais pas quoi faire alors ta fait d'là merde normal , maintenant appuis sur reset pour recommencer
ont en fait toute une histoire alors que ça arrive à tout le monde,  faut regarder les étoiles à un moment ,
la mort la mort la mort toujours la mort, passé de solide à liquide c'est la liberté de devenir toute les formes solide possible,
et dieu alors hein ! jamais rien n'est perdu et toute individualité est une illusion,

tu fait une démo tu deviens sdf ,  c'est cool mon pote,
https://www.youtube.com/watch?v=lu6GGJz5cEA
reste à savoir où trouvé une Lampe aux halogénures métalliques
9
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le 15 Octobre 2017 à 15:42:39  »
dressé priorités de l'algo
   //optimisation multy section
   //-choisir degré de dichotomie du tilt  plusse élevé  iter_e = 10;//7;   !fait
   //-optimisation complétion pyramidal des normales   !fait
   //-ajouté marge pour la fermeture de la section  !fait
   //-ajouté doublon texture !fait


bientôt ont séquencera de l'opacité par contre ont aura la surprise,
soit c'est facile en déplacent le centre_reperd, soit c'est la mouise faudra retracé toute les inversions de point

l'algo a bien pris racine sur tout ce que je voulais
Vus3D.prototype.tube3 = function(cou,ray,iterat,colorimetrique ,textured, ray_section){
   //with optimisation section   version du 15/10/2017
   //-choisir degré de dichotomie du tilt  plusse élevé  iter_e = 10;//7;
   var tex_exist = true;
   if(typeof textured != "object"){tex_exist = false}
   if(typeof ray_section != "function")
    {ray_section = function(t,u,s){return new vect3(Math.sin(u)*s,Math.cos(u)*s,0)}}

   var np = cou.len-1;//tu t'défonce avec ds douceurs
   var iter = np*iterat;
   var iter_flo_mini = Math.floor(iterat*PI);

   cou.croiser();

   var centre = new vect3(0,0,0);
   function section(t,u,s,mrr,pos){
     var vsection = ray_section(t,u,s) ;
     vsection.r(centre,mrr[0]);
     vsection.r(centre,mrr[1]);
     vsection.p(pos);
     return vsection;
   }
   
   //if(text_len >0 ){}
   var tex_len       = textured.length;//nombre de textures
   var canal_section = tex_len+3;// =3 if texture==false
   var canal_ordre   = tex_len+5;//t   p   mr    s[iter_flo] n[iter_flo] tex[iter_flo]
   var iter_flo = iter_flo_mini+canal_section;///marge pour la fermeture de la section
   var canal_place   = new Array(canal_section);//ordre d'écriture
   var tex_fibre     = new Array(canal_section);//canal sections
   for(var r=0; r<canal_section; r++){//instencer les sections
     canal_place[r] = r;//init canal_place
     tex_fibre[r] = new Array(canal_ordre);
     tex_fibre[r][0] = r/iterat;//t
     tex_fibre[r][1] = cou.get_cptr(tex_fibre[r][0]);//p
     
     tex_fibre[r][3] = new Array(iter_flo);//section
     if(r==canal_section-1){//pour instencier l'objet
       tex_fibre[r][2] = [new mat3_z(0) , new mat3_xy(0,0)];//mr
       for(var u=0; u<iter_flo; u++)
         { tex_fibre[r][3][u] = new vect3(0,0,0) }//section para
     }
     tex_fibre[r][4] = new Array(iter_flo);//normal
     for(var u=0; u<iter_flo; u++)
       { tex_fibre[r][4][u] = new vect3(0,0,0) }//normal
     for(var tex=5; tex<canal_ordre; tex++)
       { tex_fibre[r][tex] = new Array(iter_flo) }//textures
   }
   var mr_init = mat3_d(v3_(0,0,1));// !!!affecté tilt d'entré
   for(var r=0; r<canal_section-1; r++){//mat3 directionnel && tilt continu
     var vs = tex_fibre[r+1][1].v.new();
     vs.sp(tex_fibre[r][1].v);
     if(r==0){
       tex_fibre[r][2] = mat3_d_find(vs,mr_init);//mr
     }else{
       tex_fibre[r][2] = mat3_d_find(vs,tex_fibre[r-1][2]);//mr
     }

     for(var u=0; u<iter_flo; u++){//calculer section après mr établi
       var i = u/iter_flo_mini*PI2;
       tex_fibre[r][3][u] = section(tex_fibre[r][0],i,//section  ajouté t para courbe tex_fibre[r][0]
         Math.max(0,tex_fibre[r][1].w*ray ), //force
         tex_fibre[r][2]                   , //mr
         tex_fibre[r][1].v                 );//p
     }
   }
   for(var r=0; r<canal_section; r++){//calcule texture relief
     for(var tex=5; tex<canal_ordre; tex++){
     for(var u=0; u<iter_flo; u++){
       var i = u/iter_flo_mini;
       if(typeof textured[tex-5] == "number" ){//doublon texture
         tex_fibre[r][tex][u] = tex_fibre[r][tex-1][u]*textured[tex-5];
       }else{
         tex_fibre[r][tex][u] =
          textured[tex-5].texture(new vect2(tex_fibre[r][0] ,i));//texture relief
       }
       
     }}
   }
   for(var tex=0; tex<tex_len; tex++){//calculer les normales du démarage
     var marge_tex = canal_section-2-tex;
     var index_tex = 5+tex;
     var index_point = tex==0?3:4 ;
     for(var r=0; r<marge_tex; r++){//normalisation de la section para
     for(var u=0; u<iter_flo; u++){//calculer normal section para
       var u1 = (u+1)%iter_flo;
       var c1 = tex_fibre[r][index_point][u].new();//p section para
       var c2 = tex_fibre[r][index_point][u1].new();
       var d1 = tex_fibre[r+1][index_point][u].new();
       var n_c = new vect3(d1.x-c1.x, d1.y-c1.y, d1.z-c1.z);
       n_c = n_c.VN( new vect3(c2.x-c1.x, c2.y-c1.y, c2.z-c1.z) );
   
       n_c.scal( tex_fibre[r][index_tex][u]*tex_fibre[r][1].w );//tex1
       n_c.p( c1 );
 
       tex_fibre[r][4][u].x = n_c.x;//avec p_section add  et tex1 scal
       tex_fibre[r][4][u].y = n_c.y;
       tex_fibre[r][4][u].z = n_c.z;
     }
     }
   }

   function deplacer_canal(){
     for(var r=0; r<canal_section; r++){
       if(canal_place[r]==canal_section-1){canal_place[r] = 0}
       else{canal_place[r] +=1}
     }
   }
   function final_canal(t){//écrire canal final   utiliser des remplacement valeurs/valeurs
     var r = canal_place[canal_section-1];
     tex_fibre[r][0] = (t+canal_section)/iterat;//t

     var ptr_courb = cou.get_cptr(tex_fibre[r][0]);
     tex_fibre[r][1].v.x = ptr_courb.v.x;//p
     tex_fibre[r][1].v.y = ptr_courb.v.y;
     tex_fibre[r][1].v.z = ptr_courb.v.z;
     tex_fibre[r][1].w = ptr_courb.w;

     //calcule texture relief
     for(var tex=5; tex<canal_ordre; tex++){
     for(var u=0; u<iter_flo; u++){
       var i = u/iter_flo_mini;
       if(typeof textured[tex-5] == "number" ){//doublon texture
         tex_fibre[r][tex][u] = tex_fibre[r][tex-1][u]*textured[tex-5];
       }else{
         tex_fibre[r][tex][u] =
          textured[tex-5].texture(new vect2(tex_fibre[r][0] ,i));//texture relief
       }
     }}
   }
   //utiliser des remplacement valeurs/valeurs
   function section_avant_final(){//calculer mat3 et section du canal final-1
     var r  = canal_place[canal_section-2];
     var r1 = canal_place[canal_section-1];
     var rm1= canal_place[canal_section-3];
     var vs = tex_fibre[r1][1].v.new();
     vs.sp(tex_fibre[r][1].v);
     
     var m = mat3_d_find(vs,tex_fibre[rm1][2]);//mr

     tex_fibre[r][2][1].x1     = m[1].x1     ;
     tex_fibre[r][2][1].x2     = m[1].x2     ;
     tex_fibre[r][2][1].x3     = m[1].x3     ;
     tex_fibre[r][2][1].y1     = m[1].y1     ;
     tex_fibre[r][2][1].y2     = m[1].y2     ;
     tex_fibre[r][2][1].y3     = m[1].y3     ;
     tex_fibre[r][2][1].z1     = m[1].z1     ;
     tex_fibre[r][2][1].z2     = m[1].z2     ;
     tex_fibre[r][2][1].z3     = m[1].z3     ;
     tex_fibre[r][2][1].elevat = m[1].elevat ;
     tex_fibre[r][2][1].azimut = m[1].azimut ;
     tex_fibre[r][2][0].x1   = m[0].x1   ;
     tex_fibre[r][2][0].x2   = m[0].x2   ;
     tex_fibre[r][2][0].x3   = m[0].x3   ;
     tex_fibre[r][2][0].y1   = m[0].y1   ;
     tex_fibre[r][2][0].y2   = m[0].y2   ;
     tex_fibre[r][2][0].y3   = m[0].y3   ;
     tex_fibre[r][2][0].z1   = m[0].z1   ;
     tex_fibre[r][2][0].z2   = m[0].z2   ;
     tex_fibre[r][2][0].z3   = m[0].z3   ;
     tex_fibre[r][2][0].tilt = m[0].tilt ;

     for(var u=0; u<iter_flo; u++){//calculer section après mr établi
       var i = u/iter_flo_mini*PI2;
       var section_vector = section(tex_fibre[r][0],i,//section   t_para_courbe_tex_fibre[r][0]
         Math.max(0,tex_fibre[r][1].w*ray ), //force
         tex_fibre[r][2]                   , //mr
         tex_fibre[r][1].v                 );//p
       tex_fibre[r][3][u].x = section_vector.x;
       tex_fibre[r][3][u].y = section_vector.y;
       tex_fibre[r][3][u].z = section_vector.z;
     }
   }
   function normalisation(){//normalisé
     //position_text1 = normal_section * relief_tex1 + position_section
     //position_text2 = normal_tex1    * relief_tex2 + position_tex1
     for(var tex=0; tex<tex_len; tex++){
       var index_tex = 5+tex;
       var index_point = tex==0?3:4 ;
       var r = canal_section-3-tex;//   complétion piramidal des normales :)
       var r0  = canal_place[r];
       var r1  = canal_place[r+1];
       for(var u=0; u<iter_flo; u++){//calculer normal section para
   
         var u1 = (u+1)%iter_flo;
         var c1 = tex_fibre[r0][index_point][u].new();//p section para
         var c2 = tex_fibre[r0][index_point][u1].new();
         var d1 = tex_fibre[r1][index_point][u].new();
         var n_c = new vect3(d1.x-c1.x, d1.y-c1.y, d1.z-c1.z);
         n_c = n_c.VN( new vect3(c2.x-c1.x, c2.y-c1.y, c2.z-c1.z) );
   
         n_c.scal( tex_fibre[r0][index_tex][u]*tex_fibre[r0][1].w );//tex1
         n_c.p( c1 );
 
         tex_fibre[r0][4][u].x = n_c.x;//avec p_section add  et tex1 scal
         tex_fibre[r0][4][u].y = n_c.y;
         tex_fibre[r0][4][u].z = n_c.z;
       }
     }
   }
   
   /*
      Canal Section     0     1     2     3   // = nombre texture +3 , =3 if texture==false
      float             t1    t2    t3    t4  //position para courbe [0;np]
      vect4             p1    p2    p3    p4  //point 3D && force
      [mat3_z,mat3_xy]  mr1   mr2   mr3       //tilt && directionnel
      vect3 []          s1    s2    s3        //section para [0;PI2]   ,stop à texture==false
      vect3 []          n1    n2              //normal section
      float []          tex   1     1     1   //multipliant des normales
      //     ...  normales && textures        //
      vect4             color                 //colorimetrie  calcule directose
   
      Déplacement Section  0 1 2 3 => 1 2 3 0
      généré normal après
      draw polygone section canal 0 && 1
      déplacer
   */
   if(tex_exist){

     for(var r=0; r<=iter; r++){
      var r0 = canal_place[0];
      var r1 = canal_place[1];
   
      for(var u=0; u<iter_flo_mini; u++){
        var i = u/iter_flo_mini;
        var u1 = u+1;//(u+1)%iter_flo_mini;
       
        var colo = colorimetrique(new vect2(tex_fibre[r0][0] ,i));
        var face1 = new Fac( // test avec utilisation direct des point 3d de la section
          tex_fibre[r0][4][u],
          tex_fibre[r0][4][u1],
          tex_fibre[r1][4][u]);
        var face2 = new Fac(
          tex_fibre[r1][4][u1],
          tex_fibre[r1][4][u],
          tex_fibre[r0][4][u1]);
        this.Polygon(face1,colo.v,0,0, colo.w);
        this.Polygon(face2,colo.v,0,0, colo.w);
      }
      deplacer_canal();
      final_canal(r);//écrire canal final
      section_avant_final();//calculer mat3 et section du canal final-1
      normalisation();//normalisé
     }
   }
 
};
c'est beau hein !

reste à testé   - tilt d'entré vect3   ||  courbe  vertèbre tilt    ||  false
l'implémentation de cette aspect est prévus plus simplement maintenant,
puis templatisé des modes d'utilisation



avec cette function comment j'vais généré un tas de bidule chouette 3D 0_0
récemment j'ai rencontré une forte émotion lier directement à l’aspect physique de cactus épineux en spiral  !
 leurs architecture curieusement ma évoqué une sagesse immuable  qu'ils sembles parfaitement contenir et peut être communiqué,
   de +  avec mon nouveau algo il y a moyen de faire à quelques phénomène d'espace près le même genre de forme  :-*


à par ça j'ai envie de faire un générateur d'oeil3D, de généré des tracé_paramétrique_spectral pour taffé une zik ultra acide et céleste  sans truc chelou c'est promis! , j'ai envie de replongé dans le body musculaire ça sera jamais fini ça évolué toujours , taffé des algo à contrainte d'espace phénoménal pour biomorphisé ça structure  élaboré un univers d'objet fondé sur un cytoplasme_espace , j'ai des idées d'effet mi2Dmi3D sur image tout les jrs, chuis en galère de trouvé une entreprise pour de l'alternance, & j'ai limite des ampoules sur les 3doigts de la gauche à force de tâté la guitare le week end ...        ...
j’espère qui me reste du temps à vivre j'ai envie de prospéré pour continué tout ces trucs que je fais ou que je pourrais faire ...
 ... 
10
Blabla de sceners / Re : HS pixelartdisk
« Dernier message par Graindolium le 12 Octobre 2017 à 00:40:29  »
uais j'ai 2jrs pour taffé l'objet tube ,
faire le ménage dans le moteur 3D , unifier dernier version ,  ont a un problème avec le flip vertical pour séquencé  c'est le genre de mouise qui fallait faire à la fin.
balayé dans body et oeil, affecté une }zone-de-code{ musculaire rassemblé dans body

tube: function(
 - courbe
 - rayon
 - iteration ( *PI section , *1 segment )
 - function colorimetrie(position vect2) return vect4 || vect4 color
 - tableau de function texture_volumique   ||  false
 - tilt d'entré vect3   ||  courbe  vertèbre tilt    ||  false
 - function paramétrique_section(u)  ||  false
){
 - optimisation pré calcule des sections
 - inclure paramétrique_sections dans la table des normals multiplier



maintenant que le pancréatique avec qui je suis en conflit d'espace a nettement diminué ces influences en énergie négative sur ma personne, mon espace de travail est relativement redevenu vivable,
en résumé je peut un peut mieux me concentré,  j'enttends encore toussé et parfois il y a du bruit et un nouveau voisin a emménagé dans mon plafond aussi... ,   toute fois les angoisses et le comportement à vivre dehors c'est arrêté ,   les insultes d'un alcoolique sont difficile à supporté, en lui m'étant différente sorte de pression social je suis + ou - parvenu à conditionné sont mental pour le forcé à me respecté  tout de même malgré sont age avancé,
je vous déclare que je ne vie plus dans la peur !   enfin prèsque plus , nerveusement j'ai également fait des sacrifice temporel de mon plaisir, pour être capable d'une violence passablement plus grande et durable  même si évidement une partie de ma créativité c'est raréfier

donc ont vas pouvoir enfin recodé l'algo de texture multiplier en l'appliquant sur le tube, sans nécessairement passé par une désillusion d'existence


   /*
   Canal Section     0     1     2     3   // = nombre texture +4 , =3 if texture==false
   float             t1    t2    t3    t4  //position para courbe [0;np]
   vect4             p1    p2    p3    p4  //point 3D && force
   [mat3_z,mat3_xy]  mr1   mr2   mr3       //tilt && directionnel
   vect3 []          s1    s2    s3        //section para [0;PI2]   ,stop à texture==false
   vect3 []          n1    n2              //normal section
   float []          tex   1     1     1   //multipliant des normales
   vect3 []          n1                    //il en faut 2 minimum
   //     ...  normales && textures        //
   vect4             color                 //colorimetrie  calcule directose

   Déplacement Section  0 1 2 3 => 1 2 3 0
   généré normal après
   */

   //écrire canal final
   //calculer mat3 et section du canal final-1
   //normalisé
   //draw polygone section canal 0 && 1
   //déplacé

ça sa vas nous servir de ouf à augmenter la puissance de ouf, aucun recalcule inutile !
ont vas encore être embêté avec les accroissement mémoire du garbage, faudra assigné des valeurs/valeurs  ???

position_text1 = normal_section * relief_tex1 + position_section
position_text2 = normal_tex1 * relief_tex2 + position_tex1
...
  c'est une galère !

alors voilà l'algo , il est plus puissant et fait sont taff, puis ont peut encore l'optimisé sur les normal en les complétent piramidalement,
en attendent ça marche bien

y a peut être de tout petit pépin  sur la fermeture de la section

à non c'est pas compliqué , c'est mon voisin qui est compliqué

le décalage de la fermeture_section viens des normales qui se cumul à la fin en forment une boucle en reprennent des normals déjà réévalué,
pr palier à ça ben faut juste faire une marge,  seulement sur la table des normales lol'z

restera plus cas testé la vertèbre_tilt sur le body, et enfin s'éclaté à taffé des textures bizarre :)
ben entendu cette technique de multiplicité des textures volumique est limité par l'effet d’expansion , qui dédensifi la définition de la surface et fait apparaitre de gros polygone !
pourtant ont pourra redensifier de façon homogène la surface avec des tracés en espace_physique   rebidouillable ensuite...
généré ces formes paramétrique devrait se montré très pratique
Pages: [1] 2 3 ... 10