This project embeds CEF into SA:MP expanding abilities to express yourself with beauty in-game interfaces using HTML / CSS / JavaScript.
It is a FRAMEWORK (or SDK), not something that you download and use. To be able to create you should have some webdev basics (JS / HTML / CSS).
cef - Rust wrappers around CEF C API.cef-api - Rust wrappers to build client plugins using CEF.cef-interface - example of a Rust plugin.cef-sys - bindings for CEF C API.client - client CEF plugin.d3dx9 - bindings to DirectX SDK.loader - small loader that makes it work (should be named cef.asi).messages - protobuf messages to communicate with server on net.network - quinn glue (laminar like).proto - raw proto files.renderer - glue between CEF renderer process and main logic.server - server side plugin.Latest builds from the master branch are placed in the Actions.
Currently there is those OS:
cef-centos-7.so)cef-debian-*.so)cef-ubuntu-*.so)cef-windows.dll)And also all client-side parts (cef.asi, client.dll, renderer.exe).
i686-windows-pc-msvc toolchainCEF_PATH that points to libcef.lib (client only).
$env:CEF_PATH="C:/some/path"If you get a linker error, you should change hard-coded links in the source code
client/build.rs - path to DirectX SDK (default one)and now
~~
cargo +nightly build --target i686-windows-pc-msvc --release~~
rustup toolchain install nightly-i686
cargo +nightly-i686 build --release
also the client plugin can be built using OpenAL for sound (rodio by default). to do that compile the client without default features. for example:
cargo +nightly-i686 build --release --package client --no-default-features
to make it work you should place openal.dll as sound.dll in the cef folder. I do not remember what version is used exactly ... but I have it on the release page.
to build specific part you can add --package <NAME>
for example if you will try to build ALL crates on linux, you will get an error. so, pass --package server to build only server on linux.
Current versions of CEF and Chromium: 89.0.5+gc1f90d8+chromium-89.0.4389.40 release branch 4389
Date: February 26, 2021
CEF Version: 89.0.5+gc1f90d8+chromium-89.0.4389.40
CEF URL: https://bitbucket.org/chromiumembedded/cef.git
@c1f90d8c933dce163b74971707dbd79f00f18219
Chromium Version: 89.0.4389.40
Chromium URL: https://chromium.googlesource.com/chromium/src.git
@2c3400a2b467aa3cf67b4942740db29e60feecb8
But it's similar to fivem or ragemp implementations.