Breakout session on Web games in hosted apps
This breakout session was part of the Workshop on Web games. Minutes taken by Xiaoqian Wu.
Ping: today I would like to introduce a new type of web games, Baidu smart games, we launched this project two years ago
      … Baidu is a leading Chinese search engine
      … Baidu App is serving 180 million users per day
      … one goal is to increase the consumable resource
      … another goal is to set up an mini game ecosystem, which can be easily deployed for the devs
      … we created a runtime kernel, a pure JS execution and native rendering environment for 2D and 3D
      … developers are still writing web coding languages
      … we are using the runtime to enable more features and improve the performance
      … JS binding  framework
      … lifecycle, no window or document tree
      … no native binding in the runtime
      … can only include Java objects
      … performance metrics 200x improvement
      … need an efficient JS execution engine
      … [demo of the IO latence]
      … minimize parsing and compiling time
      … it’s based on a lightweight native rendering engine
      … we would like to make the most of the GPU computation
      … JS execution and rendering engine are in the same thread
      … currently a very simple threading model
      … provide key functions by modules
      … for example: file system, audio and network models
      … optimisation with partial native computation
      … benchmark of the runtime, measure the performance for different 
      components
      … [3d demo of the benchmark]
      … now we have 60,000 developers working on this platform
      … 150,000 smart prgrames
      … it’s an opensource runtime
      … it also provide support for the developers during the whole process of 
      the developing the games
      … it can integrate with other game engines, like Cocos, Unity
      … still has performance limitation compared to the native
      … future improvement with cloud gaming, and third party technical 
      service provider
      … we offer an AI Framework for this program
      … to provide AI capability to the developers
      … most developers have difficulties using the AI library directly
      … architecture of the AI framework of this program
      … developers can take advantage of the face detection
      … camera matrix, anchor matrix, ambient
      … it’s using a JS framework, so developers can use WebAPIs like WebXR
      … we provide many other AI APIs
      … like face API
      … [demo of a interactive face game]
      … [another emoji face game demo]
      … [AR demo to color a 3D car model]
      … we will also provide WebML and Paddle.js APIs to allow the developers 
      to customise their games
      … future work provide more AI APIs for the developers
Justin: is this AI model only work on Baidu Apps?
Ping: We’ve opensourced the runtime
@@2: is the back end also open source?
Ping: yes
Chris: it's interesting you are taking advantage of the GPU with native apps
@@3: why do you develop your own rendering engine?
ping: due to the limitation of flexibility of the AI APIs and performance, it became a must to us
Chris: same for us
Tom: does it work the same on IOS?
Ping: we do have difficulties to make it work in IOS, we tried talking to Apple
Tom: do you use the web view in IOS?
Ping: the JS core
Chris: we use JS core, but native rendering
      … but we haven’t got to this level
Chris: would like to understand how can we do progressing games in browsers
Ping: this experience of smart games can contribute to APIs in the browsers
Tom: how many small programs?
Ping: 150,000
      … 20,000 online, but mini games is just part of them
      … we also provide quality review
Tom: does the regulation of the government for games also apply to this kind of mini games?
Ping: mini games don’t need license
Francois: what’s the blockers for the web view?
      … is there anything we can do to fix the problem?
      … some APIs are missing the in web view due to security or privacy reasons
      … what’s the gap?
Chris: this design is trying to address problems more than for the browsers or for the web view
@@3: the camera is also one reason
Ping: all the UI/device related APIs have limitation
Chris: camera access stuffs are interesting, hope the WebXR API can fix some of the problems
      … if we can get access to the native level permission
@@3: 3D computation is difficult for lots of developers
Eden: we do care about the privacy when we design these APIs
      … access to camera or geolocation needs permissions
Chris: there are a few reasons that we are going out of the web view, but using the same technology, it’s good that your API can work with GPU
@@3: how about DOM?
Ping: we don't have DOM, it’s transformed
Eden: we provide APIs for developers to export their program into HTML5 games or Baidu smart apps
Francois: I’m curious to know which part of these APIs are missing from the Web
      … we’ll have a workshop on WebML soon
      … hope these can be directly an Web API instead of something above of the Web
Ping: we are working closely with the WebML community group
Francois: [explains the WebML API]
Ping: we love the Web technologies, as it’s more friendly to the developers
Francois: most of the APIs seems valuable to web community, would like to learn more details
      … guess you will further the discussion in the Chinese IG
      … hope the outcome of the discussion will come back to the global community soon