小编che*_*o_c的帖子

如何使用socket.io发送二进制数据?

所以我在node.js(Js客户端和Android客户端)中使用socket.io发送二进制数据时遇到了麻烦.

在以下情况中没有太多信息:

http://socket.io/blog/introducing-socket-io-1-0/

http://socket.io/get-started/chat/

我需要使用socket io发送一个二进制数组,我创建并填充.

他们提供的唯一代码如下:

var socket = new WebSocket('ws://localhost');
socket.binaryType = 'arraybuffer';
socket.send(new ArrayBuffer);
Run Code Online (Sandbox Code Playgroud)

我的回答是吼叫.

java binary android node.js socket.io

11
推荐指数
1
解决办法
2万
查看次数

Android Game API:排行榜 - 获取特定的玩家得分?

解决了

我有一个简单的问题,我找不到具体的解决方案.问题是我有一个使用GooglePlay API的排行榜.我想要做的是实际获得个人和特定玩家的玩家得分.

例如,我想在我的活动中的字符串(不是LeaderboardActivity)上显示他在排行榜中的分数,或者将其放在我游戏的左上角.

我怎样才能做到这一点?

谢谢!

java android leaderboard google-api google-play-services

8
推荐指数
1
解决办法
3265
查看次数

LibGdx和Gwt:没有可用于类型的源代码

我正在尝试启动我的Html项目,但我遇到了一些问题.桌面和Android项目运作良好.问题是我有一个其他项目我用作未导入的库或其他东西.

[ERROR] [com.mobilecostudios.walkingskeleton.GwtDefinition] - Errors in 'file:/C:/Users/chelo/Documents/mobilecostudios-libgdx/trunk/walkingskeleton/WalkingSkeleton/src/com/mobilecostudios/walkingskeleton/GameLoop.java'
[ERROR] [com.mobilecostudios.walkingskeleton.GwtDefinition] - Line 21: No source code is available for type com.mobilecostudios.gamelibrary.Domain.BaseSprite; did you forget to inherit a required module?
Run Code Online (Sandbox Code Playgroud)

我的项目层次结构是:

  • GameDevLibrary
  • WalkingSkeleton
  • WalkingSkeleton-HTML

我的gwt.xml是:

    <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit trunk//EN" "http://google-web-toolkit.googlecode.com/svn/trunk/distro-source/core/src/gwt-module.dtd">
<module>
    <inherits name='com.badlogic.gdx.backends.gdx_backends_gwt' />
    <inherits name='GameLoop' />
    <entry-point class='com.mobilecostudios.walkingskeleton.client.GwtLauncher' />
    <set-configuration-property name="gdx.assetpath" value="../WalkingSkeleton-android/assets" />
</module>
Run Code Online (Sandbox Code Playgroud)

我已经将proyect添加到构建路径中了.我还缺少什么?

构建路径 在此输入图像描述

gwt inheritance android project libgdx

7
推荐指数
2
解决办法
4106
查看次数

SDL:在另一个纹理上渲染纹理

我遇到以下问题:

我需要在另一个纹理上渲染纹理,然后渲染该主纹理.例如,我有蓝色矩形纹理,我想在这个蓝色矩形的顶部绘制红色矩形.但是我希望它们仅限制此矩形的渲染.如下图所示: 在此输入图像描述

我读了一些关于它们之间的纹理blit或类似的东西,但我不确定这是否可行.

我的代码看起来像这样:

SDL_RenderCopy(ren,bluetexture,NULL,dBLUErect);
SDL_RenderCopy(ren,redtexture,NULL,dREDrect);
SDL_RenderPresent(ren);
Run Code Online (Sandbox Code Playgroud)

任何人都知道如何在SDL 2.0中执行此操作?这就是我使用的方式.

c++ textures rendering sdl blit

7
推荐指数
1
解决办法
8951
查看次数

Google云端存储Javascript使用情况

我正在尝试使用JSON API将图像上传到Google云端存储上的存储桶中,使用Javascript示例: Api Javascript示例

我可以上传图片,但它要求我登录我的谷歌帐户.

示例有一个授权按钮,据我所知,它管理OAuth凭据.

    function checkAuth() {
  gapi.auth.authorize({
    client_id: clientId,
    scope: scopes,
    immediate: true
  }, handleAuthResult);
}
Run Code Online (Sandbox Code Playgroud)

问题是:

我想在没有弹出屏幕的情况下进行身份验证,这意味着无需登录Google.因为我的客户端不知道电子邮件或密码,我希望它是自动的.

我怎样才能做到这一点?

谢谢!

----------------------------- UPDATE --------------------

因此,按照布兰登的回答,我做了以下事情:

我创建了我的政策文件并签名如下:

var http = require('http');
var fs = require('fs');
var crypto = require('crypto');
var express = require('express');
var app = express();
var p12ToPem = require("./node_modules/p12-to-pem/p12ToPem.js");
var p12File = fs.readFileSync("./KEY.p12");
var pemKey = p12ToPem(p12File, "notasecret");
 var policyJson={"expiration": "2050-06-16T11:11:11Z",
"conditions": [["starts-with", "$key", "" ],
{"acl": "bucket-owner-read" },
{"bucket": "my-bucket'name"},
{"success_action_redirect":"http://www.example.com/success_notification.html" },
 ["eq", "$Content-Type", …
Run Code Online (Sandbox Code Playgroud)

javascript cloud storage json google-cloud-storage

7
推荐指数
1
解决办法
1775
查看次数

Libgdx Scene2d - 设置actor(TextField)填充?

我一直无法设置填充或类似于演员的东西.无法弄明白的方式.我想我必须在皮肤上添加一些东西吗?

我有这个TextField:

        textboxskin = new Skin();
        textboxskin.add("textfieldback", new Texture("data/textfieldback.png"));
        textboxskin.add("cursor", new Texture("data/cursortextfield.png"));
        textboxskin.add("selection", new Texture("data/selection.png"));
        textboxskin.add("font", font);

        TextFieldStyle textfieldstyle = new TextFieldStyle();
        textfieldstyle.background= textboxskin.getDrawable("textfieldback");
        textfieldstyle.disabledFontColor=Color.BLACK;
        textfieldstyle.font=textboxskin.getFont("font");
        textfieldstyle.fontColor=Color.WHITE;
        textfieldstyle.cursor=textboxskin.getDrawable("cursor");
        textfieldstyle.selection=textboxskin.getDrawable("selection");  


        textfieldusername = new TextField("username", textfieldstyle);
Run Code Online (Sandbox Code Playgroud)

看起来像这样:

在此输入图像描述

你可以看到它看起来很可怕左中心...

user-interface android padding textfield libgdx

5
推荐指数
2
解决办法
4607
查看次数

libGDX 3D阴影

我使用libGDX,这是一个桌面项目.

我有2个模型,一个是角色,另一个是地图,如下图所示:

在此输入图像描述

我的问题是:

如何在地板上投射角色的阴影?

你可以看到角色没有阴影,因此环境光.我该使用什么或如何实现这一目标?我应该假装阴影还是有真正的阴影投射方式?

欢迎提出任何意见或建议.

java 3d shadow libgdx

5
推荐指数
1
解决办法
5531
查看次数

Libgdx:保护资产

我需要一种方法来加密 .jar 和 .apk 中的资产,一种从为 libgdx 游戏加密的二进制文件中读取数据的方法。

我知道在记忆中他们无法得到保护,但做到这一点的难度更大。

请问您知道我可以将资产转换为二进制文件并从中读取的方法吗?

我见过很多应用程序使用它们的 apk 和 obb 来执行此操作,例如:

英雄攻城奥布

java encryption android assets libgdx

5
推荐指数
0
解决办法
610
查看次数

虚幻引擎 4 上的 Websockets?

我开始使用Unreal Engine 4。我来自 Libgdx,熟悉在游戏中使用 WebSockets 客户端,在服务器上使用带有“ws”的 NodeJS。

但是,我找不到有关Websockets和 Unreal Engine 4 的信息。

我知道,鉴于它是用 C++ 编程的,您可以将外部静态库添加到虚幻项目中。

我可以使用这个 c++ websocket 库吗?

https://github.com/zaphoyd/websocketpp

它会在 Windows、Mac 和控制台上运行吗?

我不是 C++ 和静态库的专家。请帮忙,谢谢!

c++ static-libraries static-linking websocket unreal-engine4

4
推荐指数
1
解决办法
5149
查看次数

Soldity:通过地址映射进行迭代

我正在寻找一种方法来迭代 Solidity 中的映射。例如我有这个映射:

mapping (address => uint) private shares;

我想在一个函数中迭代所有地址,并根据它们的份额向它们发送以太币。

就像是:

function giveOutEth() onlyOwner returns (bool success){
for(uint i=0; i < shares.length ; i++){
//get the address and send a value
}
Run Code Online (Sandbox Code Playgroud)

}

我怎样才能实现这个目标?

谢谢

blockchain ethereum solidity smartcontracts ether

4
推荐指数
1
解决办法
1万
查看次数

C++ Socket recv混合消息

你好我有一个套接字服务器和客户端的问题.

问题是,当我发送消息时,消息会混淆.当我发送它们让我们说每秒1条消息一切都运行良好,但当我每40毫秒发送一条消息时,它们会混淆.

这是我收到的代码:

std::string* AteneaClient::readSocket () {

std::string finalString = std::string("");
int size = MSG_SIZE;

bool receiving = true;
int timesBufferInc=0;
while (receiving) {
    std::string temporalString;

    //create an empty buffer
    char* RCV_BUFFER = (char*) malloc (size* sizeof(char));
    for(int i=0;i<size;i++){
        RCV_BUFFER[i]=' ';
    }
    RCV_BUFFER[size-1]='\0';

    int result =  recv(sock,RCV_BUFFER,size-1,NULL);
    if ( result== SOCKET_ERROR ) {
        free(RCV_BUFFER);
        return NULL;
    }
    else if(result<size-1){
        receiving=false;
    }

    temporalString = std::string(RCV_BUFFER);
    finalString+=temporalString;
}
return new std::string(finalString);
Run Code Online (Sandbox Code Playgroud)

}

这是我发送的代码:

int sendThread(void* data){
SND_THREAD_DATA* parameters =(SND_THREAD_DATA*)data;
SOCKET* individualSocket = …
Run Code Online (Sandbox Code Playgroud)

c++ sockets multithreading winsock winsock2

0
推荐指数
1
解决办法
1798
查看次数