Announcement

Collapse
No announcement yet.

BLUI Open Source HTML5/JS/CSS HUD/UI

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    I just wanted to flag up an issue that I found while using BLUI - I was basically a serial abuser of BLUI and while my dev machine coped nicely with it, the machine I deployed to occasionally crashed.

    I was using 9 BLUI instances (Yes 9) to render graphics elements - these were 4 1024x1024 image buffers and 5 similarly large ones to render 5 different chunks of text. Because I was a complete HTML lamer I was reloading each page simultaneously at a given point in the game, then loading in JS calls to create DIV elements which would contain the images and text etc. This was the point where the engine would occasionally crash.

    It took me a while to locate the problem of my crashing and I think it was during the reload/refresh cycle of BLUI - The engine would show a render thread error. When I switched - experimentally - to OpenGL I could see the problem manifest in blank textures rather than an engine crash.

    FYI - I was using a timer based check with the still-loading node (Or whatever it's called) so I wasn't making the JS calls until the node said the reload was done.

    Anyway - I fixed this all (By learning a bit more HTML) and rendering all of my elements to a single page and using colour channels as individual alpha masks for each of my text elements which I can isolate in the material editor later. Also - and possibly key to it - i'm no longer reloading the page each time, but using JS to replace elements.

    My overall experience is positive with BLUI and HTML on the whole - so massive thanks to Aaron for creating this plugin. I use the engine in a slightly unusual way and plugins like this - where I can dynamically load elements -are very important to my workflow.

    Anyway - just putting this out there in case of anyone else having this - admittedly rare - problem,

    Another thing - for anyone who can help me - I'd like to create a snapshot texture from BLUI - so I can procedurally create assets in the background and grab them to a texture array - I can't for the life of me work out how to do this - I can only get a reference to the live blui buffer. Any ideas?

    Dan

    Comment


      Can I use "Execute Javascript With Params" node without creating UI widgets, materials, just simple install and build UE project and creating node "Execute Javascript With Params" without any else?

      Comment


        Originally posted by florentine3d View Post
        Can I use "Execute Javascript With Params" node without creating UI widgets, materials, just simple install and build UE project and creating node "Execute Javascript With Params" without any else?
        BLUI does not contain a standalone Javascript engine, but I assume you just want to run some scripting on the page without displaying it. This is possible, just don't create a place to render the texture.
        If the main goal is to just run Javascript, I suggest you take a look at Unreal.js

        HTML/CSS/JS Powered UI - Free

        Comment


          Hello everyone, state of the plugin time!

          I'm still alive and I haven't just abandoned the plugin. It's just that I'm a bit busy!
          What's going on right now, is I'm working on an automated build script to create a packaged version of the plugin.
          This will build from source, meaning it will pull down CEF3 and the Chromium codebases, as well as the custom BluBrowser code.
          It will apply patches and build the entire plugin from source. It will also generate the debugging symbols for CEF3.

          It takes a looooong time. Upwards of an hour.

          But it should help speed up moving to newer versions of Chromium and CEF, as well as help those who want to toy with lower level bits of the plugin.
          I have it almost finished and working on Windows so far, OSX and Linux will be next.

          The next release of BLUI will include some keyboard fixes from the community, and a new version of CEF (Build 2623 - Chromium 49.0.2623.87)

          - Aaron Shea

          HTML/CSS/JS Powered UI - Free

          Comment


            Just beautiful Aaron.

            Comment


              Does anyone else have problems with crash in a deployed project? I tried integrating BLUI with my UE4 project by following the QuickStart-guide and using the ExampleHUD blueprint. In the editor is works fine, even when running as "standalone game". But when deploying for Win64 I get a crash on LoadURL().

              I tried to add some debug logs in BluEye.cpp and it turns out the problem is that the browser object is NULL, i.e. CefBrowserHost::CreateBrowserSync returns zero in UBluEye::init.

              I find it strange that this only happens in a deployed project, does anyone have a clue on why this might happen?

              Comment


                Originally posted by C.Hallqvist View Post
                Does anyone else have problems with crash in a deployed project? I tried integrating BLUI with my UE4 project by following the QuickStart-guide and using the ExampleHUD blueprint. In the editor is works fine, even when running as "standalone game". But when deploying for Win64 I get a crash on LoadURL().

                I tried to add some debug logs in BluEye.cpp and it turns out the problem is that the browser object is NULL, i.e. CefBrowserHost::CreateBrowserSync returns zero in UBluEye::init.

                I find it strange that this only happens in a deployed project, does anyone have a clue on why this might happen?
                I second this, any fixes for this crash? It occurs whenever i use a widget with Blue
                Cepheus Protocol
                recruitment@halcyonwinds.com

                Comment


                  hy, can i ask what unreal version support for BLUI. because using unrealengine 4.10 and 4.11, unreal says to rebuild manually.

                  Comment


                    Originally posted by C.Hallqvist View Post
                    Does anyone else have problems with crash in a deployed project? I tried integrating BLUI with my UE4 project by following the QuickStart-guide and using the ExampleHUD blueprint. In the editor is works fine, even when running as "standalone game". But when deploying for Win64 I get a crash on LoadURL().

                    I tried to add some debug logs in BluEye.cpp and it turns out the problem is that the browser object is NULL, i.e. CefBrowserHost::CreateBrowserSync returns zero in UBluEye::init.

                    I find it strange that this only happens in a deployed project, does anyone have a clue on why this might happen?
                    In reply to my own question, I believe the problem was that the experimental "Web Browser" widget plugin was enabled. When I disabled that, BLUI seems to work also in deployed mode, so I guess there is some conflict between these two.

                    Comment


                      Originally posted by C.Hallqvist View Post
                      In reply to my own question, I believe the problem was that the experimental "Web Browser" widget plugin was enabled. When I disabled that, BLUI seems to work also in deployed mode, so I guess there is some conflict between these two.
                      That's an interesting conflict, I'll have to look into this!

                      HTML/CSS/JS Powered UI - Free

                      Comment


                        Something for an upcoming release, much more compact property settings in blueprints!

                        Click image for larger version

Name:	5703369679606f902a9a08a1.png
Views:	1
Size:	151.6 KB
ID:	1103862

                        HTML/CSS/JS Powered UI - Free

                        Comment


                          Oh that will make things much cleaner and easier! Is that a chromium flag in the settings there for hardware accel and such?!

                          Comment


                            On 4.11, I get absolutely no keyboard input in the widget blueprint anymore. All widgets using BLUI are affected although it's not a BLUI problem per se. Something has changed between keyboard/focus handling in 4.10 and 4.11. This is a real showstpper.

                            Comment


                              Originally posted by Melanie_T View Post
                              On 4.11, I get absolutely no keyboard input in the widget blueprint anymore. All widgets using BLUI are affected although it's not a BLUI problem per se. Something has changed between keyboard/focus handling in 4.10 and 4.11. This is a real showstpper.
                              I'm observing this issue on my end as well. Filing an issue and will be looking into it soon. May be a little bit however, due to finals and PAX East during this coming week.

                              HTML/CSS/JS Powered UI - Free

                              Comment


                                Originally posted by AaronShea View Post
                                Greetings!

                                Current Release:

                                Check GitHub release page for changelog

                                You may have seen my post about my Chromium Embedded Framework powered UI engine. But it's made so many strides recently that I've decided it needs a new thread.
                                First off, it's completely redone!

                                Here's a few demos:



                                and





                                Grab it here!

                                Quick Start Wiki

                                JavaScript Events Wiki

                                Demo Project (currently needs to be updated to 3.0, hang tight!)

                                Do you use BLUI in your project? I'd really love it if you credit me and it! You can even use the logo right here!

                                As you can see, we're using plain old HTML loaded from disk, rendered to a texture, then painted on an image widget using a UMG brush!

                                I'm trying to make the blueprint system as simple as possible, there aren't any dependencies on specific display methods, allowing you to instantiate a "BluEye" within ANY blueprint, set the options using blueprints, then grab the material instance using a node that you can paint on ANYTHING you like. There are also helper nodes and functions to pass mouse input, and keyboard input into the "browser."

                                Once again. It's free, MIT licensed, and is powered by CEF.

                                GitHub Link: https://github.com/AaronShea/BLUI


                                Here's a quick technical run down on how it works!
                                • The plugin spawns off a CEF process in the background
                                • This process is like the Chrome browser, it will take care of loading the page, js, css etc.
                                • The plugin sips off the render buffer of CEF
                                • Translates that into a texture
                                • And forwards any input to the browser
                                • That's it!


                                There is minimal impact on performance as all the HTML page loading happens in another process. The texture also only updates when Chromium requests a redraw, it does not redraw every tick!

                                This is open source! If you find bugs, hit me up or file an issue on the Github page! Better yet, fix it yourself if you're up to the challenge and make a pull request!

                                Please make pull requests, leave feedback, and let me know what you think! I hope this makes your lives easier while developing with the awesome UE engine!

                                BLUI got featured on the community spotlight!

                                At time marker 45:15

                                BLUI Got a Dev Grant!

                                Check out the batch of grants here!

                                This is an awesome honor! I never expected any of my projects to advance this far! I only have you guys to thank so....

                                Thanks guys!

                                -Aaron Shea
                                BLUI would be ideal as another window in the VR Editor itself.

                                Comment

                                Working...
                                X