Skip to content
  • Recent
  • Tags
  • Popular
  • Users
  • Search
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

Lay Theme Forum

  1. Home
  2. General Discussion
  3. P5js in Laytheme

P5js in Laytheme

Scheduled Pinned Locked Moved General Discussion
18 Posts 9 Posters 2.2k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mariusjopenM Offline
    mariusjopenM Offline
    mariusjopen
    Global Moderator
    wrote on last edited by
    #6

    Dear @debutdebut
    very good answer!

    Thank you!

    Marius

    www.mariusjopen.world

    1 Reply Last reply
    0
    • agaukstA Offline
      agaukstA Offline
      agaukst
      wrote on last edited by
      #7

      Sorry for necroing, but thought it'd be better to ask here since I've been following this exact tutorial.

      Hey @debutdebut - thanks for the great tutorial! I love interactive websites and I'm looking to spice my portfolio site up a bit with P5.js.

      By following this guide I have been able to get my sketches to show up and working well in Google Chrome, but none of them work in either Firefox or Edge, and I can't for the life of me figure out why. I see that your site ja-kob.ch works fine in all three of these browsers.

      I'll provide the code for my sketch, index.html and screenshots of my setup in Custom CSS & HTML in Lay Theme, let me know if I have done anything wrong that would break my sketch in other browsers than Chrome.

      Sketch.js:

      var cnv;
      var ey;
      
      function setup() {
      	cnv = createCanvas(windowWidth, windowHeight);
      	//createCanvas(windowWidth, windowHeight);
      	colorMode(HSB, 360, 100, 100, 100);
      	angleMode(DEGREES);
      	cnv.position(0, 0);
      	cnv.parent('sketch-holder');
      
      	ey = {
      		x: width/2,
      		y: height,
      		rad: width/3,
      	};
      
      
      }
      
      function draw() {
      	background(0, 0, 15);
      
      	var ang = atan2(mouseY - ey.x, mouseX - ey.x);
      
      	noStroke();
      	fill(0, 0, 100);
      	ellipse(ey.x, ey.y, ey.rad);
      	fill(340, 50, 90);
      	ellipse(ey.x + (ey.x / 4) * cos(ang), ey.y + (ey.y / 4.5) * sin(ang), ey.rad / 3.3);
      	sin(ang), ey.rad;
      	fill(0, 0, 15);
      	ellipse(ey.x + (ey.x / 3.8) * cos(ang), ey.y + (ey.y / 4) * sin(ang), ey.rad / 6);
      	sin(ang), ey.rad;
      	fill(0, 0, 100);
      	ellipse(ey.x + (ey.x / 3.2) * cos(ang), ey.y + (ey.y / 3.6) * sin(ang), ey.rad / 16);
      	sin(ang), ey.rad/2;
      
      }
      
      function windowResized(){
      	resizeCanvas(windowWidth, windowHeight);
      	ey.x = width/2;
      	ey.y = height;
      	ey.rad = width/3;
      }
      
      

      Index.html:

      <!DOCTYPE html>
      <html lang="">
        <head>
          <meta charset="utf-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>BigEye</title>
          <style> body {padding: 0; margin: 0;} </style>
          <script src="libraries/p5.js" type="text/javascript"></script>
          <script src="libraries/p5.sound.js" type="text/javascript"></script>
          <script src="libraries/p5.dom.js" type="text/javascript"></script>
          <script src="bigeye.js" type="text/javascript"></script>
        </head>
        <body>
        </body>
      </html>
      
      

      Lay Theme Custom CSS & HTML:

      Custom CSS for Desktop Version:

      #sketch-holder {
        margin: 0;
        padding: 0;
        width: 100%;
      }
      
      #sketch-holder canvas {
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
      }
      

      Custom <head> content:

      <script src="https://myurl/wp-content/assets/libraries/p5.js"></script>
      <script src="https://myurl/wp-content/assets/libraries/p5.dom.js"></script>
      <script src="https://myurl/wp-content/assets/libraries/p5.sound.js"></script>
      
      <script>
          if (jQuery(window).width() > 600) {
        jQuery.getScript( "https://myurl/wp-content/assets/bigeye.js", function( data, textStatus, jqxhr ) {
          console.log( data ); // Data returned
          console.log( textStatus ); // Success
          console.log( jqxhr.status ); // 200
          console.log( "Load was performed." );
        }); 
      }
      </script>
      
      <script>
      window.laytheme.on("newpageshown", function(layoutObj, type, obj){
        if(obj.slug == "home"){
          jQuery('#sketch-holder').show();
          } else {
           jQuery('#sketch-holder').hide();
           console.log( "Hide");
        }
      });
      </script>
      

      Custom HTML at top:

      <div id='sketch-holder'></div>
      

      Cheers,
      August :--)

      augustgaukstad.com

      1 Reply Last reply
      0
      • arminunruhA Offline
        arminunruhA Offline
        arminunruh
        Global Moderator
        wrote on last edited by
        #8

        good luck!

        1 Reply Last reply
        0
        • L Offline
          L Offline
          lena...weber
          wrote on last edited by
          #9
          This post is deleted!
          1 Reply Last reply
          0
          • L Offline
            L Offline
            lena...weber
            wrote on last edited by
            #10

            Hello everybody,
            I have also been following the tutorial @debutdebut
            My Libraries and sketch.js load fine but the .ttf font file (stored in assets also) called by sketch.js can't be found. (console says "Load was performed." )

            The sketch isn't displayed at all, even when I comment out everything in my sketch related to my specific font (i thought there would be a standard font displayed instead like in the p5.js editor)
            I also tried choosing a path of a font i had already installed as a Webfont in Laytheme, but the problem remained the same.
            All I see is "Loading..." at the bottom of my sketch
            I can't figure out the problem.
            Does somebody know what could be the issue here?
            Beginners-Greetings :)
            Lena

            debutdebutD 1 Reply Last reply
            0
            • mariusjopenM Offline
              mariusjopenM Offline
              mariusjopen
              Global Moderator
              wrote on last edited by
              #11

              Dear @lena-weber
              yes. I hope someone can help!

              Best!

              Marius

              www.mariusjopen.world

              1 Reply Last reply
              0
              • C Offline
                C Offline
                cgvdv_bk
                wrote on last edited by
                #12

                Hey There,
                i'm sorry if this is a stupid question – my Programming Skills are very basic...

                With the code provided by the p5.js Web-Editor, I embedded a sketch via <iframe> on my Website http://homeoffice.kroenker.com

                <iframe src="https://editor.p5js.org/cgvdv_bk/embed/-zDedzX57" style="position: fixed; width: 100%; height: 100%; border: none"></iframe>
                

                Naturally i can't place anything onto the <iframe> Element... But is there any "easy" possibility (especially in Laytheme) to nest the <iframe> element into the Background?

                Best,
                Bernd

                1 Reply Last reply
                0
                • arminunruhA Offline
                  arminunruhA Offline
                  arminunruh
                  Global Moderator
                  wrote on last edited by
                  #13

                  yea you can put the iframe in lay options -> custom css & html -> custom html in footer
                  for example

                  and then make the background transparent so your background iframe is shown (put this in some css field)

                  #grid, .cover-region-desktop .cover-inner{ background!transparent!important; }
                  
                  C 1 Reply Last reply
                  1
                  • arminunruhA arminunruh

                    yea you can put the iframe in lay options -> custom css & html -> custom html in footer
                    for example

                    and then make the background transparent so your background iframe is shown (put this in some css field)

                    #grid, .cover-region-desktop .cover-inner{ background!transparent!important; }
                    
                    C Offline
                    C Offline
                    cgvdv_bk
                    wrote on last edited by
                    #14

                    @arminunruh Thanks, i'll give it a try!

                    1 Reply Last reply
                    0
                    • L lena...weber

                      Hello everybody,
                      I have also been following the tutorial @debutdebut
                      My Libraries and sketch.js load fine but the .ttf font file (stored in assets also) called by sketch.js can't be found. (console says "Load was performed." )

                      The sketch isn't displayed at all, even when I comment out everything in my sketch related to my specific font (i thought there would be a standard font displayed instead like in the p5.js editor)
                      I also tried choosing a path of a font i had already installed as a Webfont in Laytheme, but the problem remained the same.
                      All I see is "Loading..." at the bottom of my sketch
                      I can't figure out the problem.
                      Does somebody know what could be the issue here?
                      Beginners-Greetings :)
                      Lena

                      debutdebutD Offline
                      debutdebutD Offline
                      debutdebut
                      wrote on last edited by
                      #15

                      dear @lena-weber, from your description I suppose that the path to your font is wrong. I good place to start is by opening the developer console of your browser. Usually, p5js tells you there if something is wrong with your path.

                      Hope this helps! āœŒļø

                      1 Reply Last reply
                      0
                      • mariusjopenM Offline
                        mariusjopenM Offline
                        mariusjopen
                        Global Moderator
                        wrote on last edited by
                        #16

                        Dear @debutdebut
                        Thank you for helping!
                        We appreciate the time people take to make the LayTheme community stronger.
                        Best!
                        Marius

                        www.mariusjopen.world

                        1 Reply Last reply
                        0
                        • W Offline
                          W Offline
                          wrongstudio
                          wrote on last edited by
                          #17

                          i followed this but seems like if i come back i need to do a hard refresh or else nothing shows up.

                          W 1 Reply Last reply
                          0
                          • W wrongstudio

                            i followed this but seems like if i come back i need to do a hard refresh or else nothing shows up.

                            W Offline
                            W Offline
                            wrongstudio
                            wrote on last edited by
                            #18

                            @wrongstudio I just added:

                            jQuery.ajaxSetup({cache:true});

                            and that seemed to do it.

                            1 Reply Last reply
                            1
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            I also code custom websites or custom Lay features.
                            šŸ’æ Email me here: šŸ’æ
                            info@laytheme.com

                            Before you post:
                            1. When using a WordPress Cache plugin, disable it or clear your cache.
                            2. Update Lay Theme and all Lay Theme Addons
                            3. Disable all Plugins
                            4. Go to Lay Options → Custom CSS & HTML, click "Turn Off All Custom Code", click "Save Changes"

                            This often solves issues you might run into

                            When you post:
                            1. Post a link to where the problem is
                            2. Does the problem happen on Chrome, Firefox, Safari or iPhone or Android?
                            3. If the problem is difficult to explain, post screenshots / link to a video to explain it
                            Online Users
                            Forgot your key, lost your files, need a previous Lay Theme or Addon version? Go to www.laykeymanager.com
                            laytheme.com
                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Recent
                            • Tags
                            • Popular
                            • Users
                            • Search