Sistema de Partículas Lydia NFTLoveGenerator

 


UNA IDEA QUE COBRA FORMA

Presentamos en la entrada Lorenzo&Toñi NFT Generator la idea de poder confeccionar un Generador de NFT que presentara las siguientes características:

  • Ser único en cada una de sus generaciones
  • Permitir que el propietario del Generador pudiese generar el NFT y compartirlo con quien desease.
  • La persona que recibiera dicho NFT obtendría la titularidad del mismo, pudiendo ser compartido con quien también desease, siendo los posteriores envíos copias sin titularidad.
  • Su valor no seria de activos físicos o económicos de la BlockChain ya que, a diferencia de los acostumbrados NFTs, este tipo podría difundirse desde cualquier tipo de dispositivo, red, o medio de difusión, por ejemplo WhatsApp. Siendo el amor, devoción o simplemente el cariño de una amistad el único valor estipulado.
Se podría decir que este es un resumen de los valores mínimos que estamos creando en esta propuesta. No obstante, había que crear una diferenciación creativa: la del NFTLoveGenerator.

Exponemos, aquí pues, las bases de nuestra propuesta creativa, en este Laboratorio de Arte Generativo.
Volvemos a repetir que alguien podría ofenderse ante el uso indebido del concepto de NFT y reitero que eso seria exactamente igual que llegarse a ofender porque el lenguaje JAVA y JavaScript no compartieran idénticas raíces; o similar a ofenderse porque alguien pudiera imaginar una nube con ausencia de presión atmosférica. Así pues, consideremos los NFT LoveGenerator poco menos que simplaticos experimentos creativos que homenajean la increíble labor de los auténticos NFTs.

Aclarado esto, pasemos a determinar porque esta propuesta puede llegar a ser interesante desde el punto de vista creativo.

  1. EVOLUCIÓN CREATIVA: uno de los elementos que podemos observar en esta primera version de NFT LoveGenerator es precisamente la posibilidad de poseer diferentes modos de dibujo que pudieran ser condicionados a la variable frameCount para obtener lo que yo denomino Evolución Creativa. La Evolución Creativa implica un cambio de la forma de dibujar a lo largo de toda la vida de una sola ejecución. Por ejemplo, la creación puede comenzar con un triangulo; pasado un tiempo evolucionar a un cuadrado, para finalizar siendo un circulo tomando como referencia de perfección el numero de vertices, los cuales irían creciendo con el tiempo. Ese cambio en cuanto al modo de dibujo es lo que yo denomino Evolución Creativa: La creación evoluciona con el tiempo tomando difententes composición, incluso modos de ejecutarse, a lo largo del tiempo.
  2. PARAMETRIZACION ALEATORIA: podemos incluir una clase con los diferentes valores de las variables que parametrizan nuestra maquina de dibujo.
  3. CLASSIFICACION DE LOS COLORES: Entendiendo por CLASSIFICACION convertir en clases los colores de modo que la llamada a un método de dicha clase otorgara un color aleatorio entre un rango de colores determinados, ofreciendo a la creación un efecto especial.
  4. EXTENSIÓN DE LA CREATIVIDAD ABSTRACTA: En esta propuesta imaginativa no podia faltar crear extensiones abstractos que refuercen nuestra creatividad. Por ejemplo, si a una radio le cambiamos su tamaño, le colocamos asientos laterales, posibilidades de pantalla de visualice la traducción de cada una de las canciones e inventamos un color metálico y rugoso que cubra su superficie otorgándonos diferentes tactos sugerentes… no dejaria de ser una radio auque ya no fuera una radio. Creando Gamas de colores, firmas personalizadas para cada una de las evoluciones creativas, modos de ejecución, y diferenciación entre sus ejecuciones estamos obteniendo estas extensiones.


CÓDIGO 

//(C)Sergio Salazar Latorre

//Lydia Particle 5000 ArKo AquaSoul

let l=500

let D=50

let r=D/2

let td=2

let tc=3

let np = 5000

let p = Array(np)

let x,y

let saved=0


function setup() {

  createCanvas(l,l);

  for(let i=0; i<np; i++){

    p[i] = new Lydia(random(0,l), random(0,l))

  }

}


function draw() {

  background(0);

  noStroke()

  

  for(let i=0; i<np; i++){

    p[i].dibuja()

  }

  noLoop()

  firma()

}


function firma(){

  let t = "Lydia Particle NFTLoveGenerator"

  if (td==1){

    t=t+"FlowTension "+ np + " "

  }else if(td==2){

    t=t+"ArKo "+ np + " "

  }

  

  if(tc==1){

    t=t + "Disperse Autuum " + int(random(1,12021966))

  } else if(tc==2){

    t=t + "ToraQuore " + int(random(1,12021966))

  } else if(tc==3){

    t=t + "AquaSoul " + int(random(1,12021966))

  }

  stroke(0)

  strokeWeight(2)

  fill(255)

  if(saved==1){

    save(t + ".jpg")

  }

  text(t,5,l-12)

  

}



class Lydia

{

  constructor(x,y){

    this.x=x

    this.y=y

    this.D=D

    

  }

  

  dibuja(){

    if(td==1){

    //this.flowTension()

    } else if(td==2){

      this.arko()

    }

  }

  

  arko(){

    //arc(50,50,80,80,0,PI)

    fill(this.dameColor(tc))

    arc(this.x,this.y,random(10,100),random(10,100),random(0,2*PI), random(0,2*PI))

    

  }

  

  flowTension(){

    fill(this.dameColor(1))

    beginShape()

    

    vertex(this.x, this.y)

    vertex(this.x + random(this.x,l-100), this.y)

    vertex(random(0,l), random(0,l))

    vertex(random(0,l), random(0,l))

    vertex(random(0,l), random(0,l))

    vertex(random(0,l), random(0,l))

    endShape(CLOSE)

  }

  

  dameColor(cc){

    if(cc==1){

      return color(random(93,200),

                  random(150,193),

                  random(185),128)   

    } else if (cc==2){

      return color(random(200,250),

                  random(100,250),

                  random(150,200))

    } else if (cc==3){

      return color(random(68,200),

                  random(100,250),

                  random(150,200))

    }

    

  }

}

Comentarios

Entradas populares