Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » WebAssembly | страница 2
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 2 из 2
На страницу: Пред.  1, 2 | Все страницы
Поиск в этой теме:
Железный канал: «WebAssembly»
Voha
 930 EGP


Модератор
Рейтинг канала: 9(1038)
Репутация: 167
Сообщения: 4920
Откуда: Moscow, Russia
Зарегистрирован: 15.02.2001
БулерМэн :
То есть, юнити-плеер запускает компиляцию этого blob'a с кодом библиотеки, беря в качестве исходника 'Build/tanks.json', содержащий скорее всего текст на каком-то языке?
Э... ну там в json метаданные для запускаемого инстанса.
https://webassembly.org/demo/Tanks/Build/tanks.json
Код:
{
"TOTAL_MEMORY": 50331648,
"dataUrl": "tanks.data.unityweb",
"wasmCodeUrl": "tanks.wasm.code.unityweb",
"wasmFrameworkUrl": "tanks.wasm.framework.unityweb",
"asmCodeUrl": "tanks.asm.code.unityweb",
"asmMemoryUrl": "tanks.asm.memory.unityweb",
"asmFrameworkUrl": "tanks.asm.framework.unityweb",
"splashScreenStyle": "Dark",
"backgroundColor": "#222C36"
}

_________________
Time will show...
    Добавлено: 10:57 01-03-2019   
seaman
 59 EGP

Репутация: 2
Сообщения: 18
Откуда: Самара
Зарегистрирован: 15.01.2017
Там разные вещи. Как двоичные, так и код на js и код вот такого типа:
 Cкрытый текст   (кликните здесь для просмотра)
Код:
(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.DYNAMICTOP_PTR|0;var j=env.tempDoublePtr|0;var k=env.ABORT|0;var l=env.STACKTOP|0;var m=env.STACK_MAX|0;var n=env.cttz_i8|0;var o=0;var p=0;var q=0;var r=0;var s=global.NaN,t=global.Infinity;var u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0.0;var D=0;var E=global.Math.floor;var F=global.Math.abs;var G=global.Math.sqrt;var H=global.Math.pow;var I=global.Math.cos;var J=global.Math.sin;var K=global.Math.tan;var L=global.Math.acos;var M=global.Math.asin;var N=global.Math.atan;var O=global.Math.atan2;var P=global.Math.exp;var Q=global.Math.log;var R=global.Math.ceil;var S=global.Math.imul;var T=global.Math.min;var U=global.Math.max;var V=global.Math.clz32;var W=global.Math.fround;var X=env.abort;var Y=env.assert;var Z=env.enlargeMemory;var _=env.getTotalMemory;var $=env.abortOnCannotGrowMemory;var aa=env.invoke_viiifiii;var ba=env.invoke_diddi;var ca=env.invoke_fiff

Вроде тоже js
И вот тот большой blob файл, который так просто не скачать. Только с запущенной игрой и только через отладчик. А в отладчике браузера там сразу показывает код на wasm.
Типа:
 Cкрытый текст   (кликните здесь для просмотра)
Код:
 (func $func687 (param $var0 i32) (param $var1 i32) (param $var2 i32) (param $var3 i32) (param $var4 i32)
    (local $var5 i32) (local $var6 i32) (local $var7 i32) (local $var8 i32)
    block
      get_local $var0
      i32.const 0
      i32.store
      get_local $var0
      i32.const 4
      i32.add
      tee_local $var4
      i32.const 0
      i32.store
      get_local $var0
      i32.const 0
      i32.store offset=8
      get_local $var2
      i32.load
      tee_local $var3
      get_local $var1
      i32.load
      tee_local $var1
      i32.sub
      tee_local $var2
      i32.const 180
      call $func542
      set_local $var5
      get_local $var2
      i32.eqz
      if
        return
      end
      get_local $var2
      i32.const 0
      i32.lt_s
      if
        get_local $var0
        call $func33496
      end
      get_local $var4


Последний раз редактировалось: seaman (18:31 01-03-2019), всего редактировалось 1 раз
    Добавлено: 18:30 01-03-2019   
БулерМэн
 420 EGP


Рейтинг канала: 4(58)
Репутация: 68
Сообщения: 1580
Откуда: Гороховец
Зарегистрирован: 07.02.2006
То есть там двоичный файл, который отладчик "дезассемблирует"? Улыбка
Судя по названиям функций - это автоматическая генерация имен функций и переменных.

ЗЫ Так в чем же необходимость данного кода, если говорится, что при выполнении такой код не быстрее нативного JS?

добавлено спустя 11 минут:
Может нужно для защиты исполняемого файла от всеобщего доступа? Но в чем смысл, если отладчик в любом случае показывает содержимое программы?
_________________
Дулички и фигушки

Последний раз редактировалось: БулерМэн (18:49 01-03-2019), всего редактировалось 1 раз
    Добавлено: 18:49 01-03-2019   
seaman
 59 EGP

Репутация: 2
Сообщения: 18
Откуда: Самара
Зарегистрирован: 15.01.2017
Цитата:
при выполнении такой код не быстрее нативного JS

Где такое говорится. Как раз наоборот - говорится, что wasm работает намного быстрее.

Как я понимаю - это смахивает на CIL у мелкомягких. Т.е. Заранее компилируется в некий промежуточный язык, который браузер уже компилирует рантайм в что-то нативное. Компиляция из промежуточного значительно быстрее, чем интерпретация js

Вот тот блоб файл и есть скопилированная прога в промежуточный язык.

Насчет "браузер дизассемблирует". Похоже, но не на 100%. Т.к. сам файл отдельно я не смог скачать.

Последний раз редактировалось: seaman (18:59 01-03-2019), всего редактировалось 1 раз
    Добавлено: 18:58 01-03-2019   
AnrDaemon
 857 EGP


Модератор
Рейтинг канала: 8(784)
Репутация: 37
Сообщения: 12292

Зарегистрирован: 17.10.2004
 О птичках…   (кликните здесь для просмотра)

_________________
Люблю свободный полёт... :)
    Добавлено: 00:42 10-03-2019   
_RAZAAR_
 62 EGP


Рейтинг канала: 2(11)
Репутация: -13
Сообщения: 2854 Заблокирован
Откуда: РАЗААРЪ - 40Лы от Лаве
Зарегистрирован: 15.04.2008
AnrDaemon :
 О птичках…   (кликните здесь для просмотра)


Это запугивание или объяснение чем плох/хорош веб ассемблер?

https://board.asm32.info/

Если люди(вебкодеры) поинтересуются и попрактиковавшись станут лучше понимать интернет протоколы что в этом плохого?
_________________
Quaere Vērum
------------------------

Последний раз редактировалось: _RAZAAR_ (08:40 10-03-2019), всего редактировалось 1 раз
    Добавлено: 08:36 10-03-2019   
AnrDaemon
 857 EGP


Модератор
Рейтинг канала: 8(784)
Репутация: 37
Сообщения: 12292

Зарегистрирован: 17.10.2004
Это шутка, _RAZAAR_.
Причём бородатая и никак не относящаяся к WebAssembly.
_________________
Люблю свободный полёт... :)
    Добавлено: 13:29 14-03-2019   
_RAZAAR_
 62 EGP


Рейтинг канала: 2(11)
Репутация: -13
Сообщения: 2854 Заблокирован
Откуда: РАЗААРЪ - 40Лы от Лаве
Зарегистрирован: 15.04.2008
AnrDaemon :
Это шутка, _RAZAAR_.
Причём бородатая и никак не относящаяся к WebAssembly.


Шутка на картинке с бородатым нечто? Улыбка
Или шутка этот ВВ написаый используя flat assembler который разумеется никак не относится к WebAssembly, но даже используя flat assembler вовсе необязательно убиваться при виде чего-то необычного, незнакомого или просто мало понятного Улыбка
_________________
Quaere Vērum
------------------------
    Добавлено: 19:28 15-03-2019   
Sh.Tac.
 151 EGP


Рейтинг канала: 1(2)
Репутация: 14
Сообщения: 1426

Зарегистрирован: 27.07.2005
попробовал сделать deploy в html5 одному проекту найденному на UE4 marketplace
получилось 100 метров вот такого добра Улыбка
 Cкрытый текст   (кликните здесь для просмотра)

_________________
This is what you get ...
(c) Radiohead
    Добавлено: 03:56 16-03-2019   
seaman
 59 EGP

Репутация: 2
Сообщения: 18
Откуда: Самара
Зарегистрирован: 15.01.2017
WebAssembly за пределами веба
    Добавлено: 23:47 04-04-2019   
Железный канал: «WebAssembly»
На страницу: Пред.  1, 2 | Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Тринити - это такой НЕО женского пола, малёхо недокачаный (т.е. летать и перепрошивать не умеет). (J()HN о матрице)

  » WebAssembly | страница 2
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18