Super Pig游戏开发记录(2)

21届前端秋招面经汇总 21届前端秋招面经汇总 985本硕 非科班 前端小学生 从7月10号开始投简历 到现在终于将手上已有的面试都给面完了(面的那叫一个昏天地暗,我想象过今年的面试会很痛苦,却没想到能这么痛苦)。最终决定还是将这一段时间的面试的经历给详细的写一写,为大家铺铺路,也是对面试中的知识点进行一个回顾和总结。下面先罗列出我面试的一些公司名单,后续会一家家的补上我记录中的面试内容。 持续更新!!!(尽量做到每天更新一家) 思谋科技(一面,二面,HR面) Shopee (笔试,一面,二面,HR面) 作业帮(一面,二面,HR 阅读详情

拿到了画面中其他部分的图,像是血量,计分,以及主角跟boss的距离这些图

首先我先将左上角的爱心跟数字,用一个类来封装,由这个类来控管血量

然后将分数这边也用一个类来封装,最后是将距离条也用一个类来封装。

距离条这个类,提供了两个属性,距离的最大值,以及现在的位置,就会自动将该距离转换为适当比例,显示距离差。

这张图是开场动画的截图,一开始boss会开车跑走,然后主角出来及出现Ready,Go的字

就开始游戏。


我也加上了敌人跟金币的特殊排列,敌人目前为止还是用乱数产生,单一的往前。之后再将其优化。

金币的排列这边,我声明了一个金币类,并声明一个enum表示各种形态。

有直线,双直线,斜线,X,S,三角,方形....等

但若每次产生一列,并将无效金币删除,这样可能会影响效率,所以我又声明了一个Queue。

放了10个金币列到Queue中,若是最前面的金币列已经无效(无效条件为所有金币都到画面最左边((座标+图片宽)<0))

那就从queue中取出,并且重新乱数设定后,再放入queue。

[1,2,3,4,5,6,7,8,9,10]

[2,3,4,5,6,7,8,9,10,1]

[3,4,5,6,7,8,9,10,1,2]

queue会如上一直重复,1-10分别为10个金币列,每次取出后,会乱数决定这次会是金币列形状,并乱数座标位移

这样一个简单的乱数queue就做完了。
为reComputer Super构建定制Yocto镜像:从零到烧录的完整实践 Yocto Project是一个开源协作项目,它提供了一套模板、工具和方法,允许开发者从零开始为嵌入式硬件构建完全定制化的Linux系统。其核心原理是通过层(Layer)的概念,将硬件支持包(BSP)、软件包配方和自定义配置模块化地组合起来,再利用bitbake构建引擎自动解析依赖、下载源码、编译并生成目标镜像。这项技术的核心价值在于实现对系统软件包、版本和编译选项的精确控制,从而打造出极度精简、高度可控的专用系统,尤其适用于对系统尺寸、启动速度和安全性有严苛要求的嵌入式产品与边缘计算场景。本文以NVIDI 阅读详情

相关推荐

H3CSE GB0-372备考避坑指南:从一道Super VLAN配置题看透三层交换转发逻辑

本文深入解析H3CSE GB0-372认证考试中的Super VLAN技术,详细讲解其三层转发机制与实战排错方法。通过典型考题分析和配置示例,帮助考生掌握路由交换核心知识点,避开常见备考陷阱,提升考试通过率。

weixin_42683394的博客 401

Pig源码分析: 逻辑执行计划优化

Whole View 本文分析的是逻辑执行计划优化的代码结构,具体每种Rule的实现不做分析。 看本文之前最好参考之前那篇逻辑执行计划模型的文章。 Architecture 几个关键类/接口的关系: 每个关键类/接口的实现和继承结构在下面各节展开。 Optimizer PlanOptimizer是抽象类,主要和Rule、PlanTransformLis...

架构设计 301

企业网管避坑指南:H3C交换机Super VLAN实战配置中的3个高频错误与排查思路

本文深入解析H3C交换机Super VLAN配置中的3个高频错误,包括Sub VLAN绑定顺序、local-proxy-arp设置和静态路由接口选择问题,提供详细的排查思路和修复方案,助力企业网管快速解决网络隔离与地址优化难题。

weixin_30315905的博客 417

如何用Python投机倒把几天“暴富”

本文涉及到的技术点有(多图预警!): 1.Packet Capture和Charles抓包; 2.安卓AccessibilityService无障碍服务实现自动下注; 3.Python爬虫模拟下注; 4.Python Flask编写简单接口; 5.Python使用Selenium应对JS动态加载数据的网页; 行吧,别做梦了,暴富了,我还这里码字?标题党的感觉就是舒服,还是踏踏实实搬砖吧!关于...

weixin_34221073的博客 4085

计算机网络的super super easy 教程 | IP协议 及 arp协议

网络层:这两个协议只是打包方式及使用材料不相同 ip协议 arp协议(路由器 电脑查看):只看四个地址 源mac 目的mac(不知道的情况下用00:00:00:00:00:00填充 表示我需要目的mac) 源IP 目的IP 网络层arp请求报文封装格式:源mac 目的mac 源IP 目的IP 数据链路层的帧封装(交换机 电脑 路由器): 目的mac:如果没有用FF:FF:FF:FF:FF:FF填充 源mac ping 192...

Neptune_keke的博客 1048

AMCL实战:如何用2D激光雷达在ROS中实现稳定重定位(附参数调优指南)

本文深入解析了在ROS中使用2D激光雷达实现稳定AMCL重定位的实战技巧与参数调优指南。针对粒子发散、位姿跳变等常见问题,文章从算法核心原理出发,系统讲解了初始化、粒子滤波、运动与观测模型等关键参数的分类与调优策略,并提供了一套经过验证的调优框架,帮助开发者提升移动机器人在已知地图环境下的定位鲁棒性和稳定性。

sql99的博客 134

总结|pycharm2020 激活激活方法

尊重版权,学生党可以申请官网授权!!

Asdas_的博客 1万+

android 运动目标检测_MindSpore应用案例:AI对篮球运动员目标的检测

MindSpore作为一个端边云协同的开源的全场景AI框架,今年3月份开源以来,受到了业界的广泛关注和应用,欢迎大家参与开源贡献、模型众智合作、行业创新与应用、学术合作等,贡献您在云侧、端侧 (HiMindSpore 应用程序)、边侧以及安全领域的应用案例。MindSpore与您在AI领域共同成长,让AI使能千行百业,释放出强大的生产力。本文讲述的是MindSpore对篮球运动员目标的检测应用,通...

weixin_33603813的博客 834

Super Pig游戏开发记录(4)

记录到这边,回顾一下当初再做Super Pig游戏时,我后来使用心智图作为工具来发想整个游戏 作为一个简单的纪录,对于我来说,我自己既是产品企划,也是程序开发 所以很多细节的UML,需求,SA,SD等文件,其实是没有必要去做的 毕竟那些只要放在脑中,并没有跟他人沟通的需求,我就懒得弄 所以用心智图做简单的计画,记录大纲是个不错的方法

Cloud Hsu的专栏 2270

深信服防火墙路由模式开局部署-手把手教学(小白篇)

手把手教学,拿到深信服的防火墙路由模式该如何开局?

m0_64423407的博客 2万+

044、手持视频抖动严重?OpenCV 光流 + IMU 融合的电子防抖工程方案

本文探讨了基于OpenCV光流和IMU融合的手持视频电子防抖方案。作者从实际工程经验出发,分析了纯光流和纯IMU方案的局限性,指出时间戳对齐和坐标系标定是关键挑战。文章详细介绍了融合滤波器的实现方法,推荐互补滤波替代卡尔曼滤波,并提出了动态调整融合系数的策略。在光流算法优化方面,建议采用网格化FAST特征点和前后向误差检测。最后分享了运动补偿裁剪策略和多线程流水线设计,强调在嵌入式设备上使用NEON指令优化性能。该方案通过精确的时间同步和传感器融合,有效解决了手持拍摄中的高频抖动问题。

ai技术增长的博客 250

Super Pig游戏开发记录(1)

首先第一步,先把之前做的一个小游戏的模版弄过来,然后修改修改。 在前一个小游戏中已经做好卷动背景及乱数产生物件的部份功能,直接拿来这个游戏用就很刚好。 主角是只小猪,所以我找了乱马1/2中的小P的图,在上面写字弄成两张图,来代表动画。 会有游戏模版主要是因为前阵子三星GMT奥运app比赛,所以想说弄个同类型的简单Runner游戏。 顺便当做游戏要用的模版,就做了一个小游戏。 这张

Cloud Hsu的专栏 2万+

仿真学习系列(二):ADS仿真直观理解方波与频谱分量的关系

在高速电路设计中,我们常常听到一句话:“信号其实不是电压在传输,而是频率在传播。” 这句话看似抽象,却揭示了信号世界的核心本质——任何时域波形,都可以被拆解为一系列不同频率的正弦波。 那么,一个看似简单的方波,究竟由哪些频率成分组成?为什么在示波器上,有的方波上升沿又快又“方”,而有的却“圆润”得多?这些差异背后,隐藏的正是高频分量的力量。 本文将通过使用 Keysight ADS,从零搭建仿真电路,直观地观察方波与其谐波成分之间的关系。

案例文章,高速信号 813

Super Pig游戏开发记录(3)

如图所见,这只是用photoshop简单拉一拉然后随意弄出来的测试图 做了工具之后,要把图直接转换成ios使用就很方便,虽然不多,但毕竟也切了11张小图出来 如果要转换成iOS一般显示跟Retina Display支持可是要一张一张弄,很麻烦的 转换工具 场景建立好之后,就简单的把图片载入,并对于相对应的事件处理,就完成了关卡选择 这页是要测试IAP(应用内购买)所做的一页,大概

Cloud Hsu的专栏 1533

Xilinx FPGA平台GTX简易使用教程(汇总篇)

Xilinx平台GTX简易使用教程,先“知其然”,慢慢再研究“所以然”。

数字IC/FPGA杂货铺,找一找,或许有你想要的~ 3万+

华为OD机试 - 不含101的数(Python/JS/C/C++ 双机位C卷 100分)

本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。小明在学习二进制时,发现了一类不含101的数,也就是:现在给定一个正整数区间,请问这个区间内包含了多少个不含101的数?输入的唯一一行包含两个正整数。输出的唯一一行包含一个整数,表示在区间内一共有几个不含101的数。8 1668 → “1000”

学Java,找哪吒 1250

Python复刻《愤怒的小鸟》:从Pygame游戏开发到物理引擎实现

游戏开发是计算机图形学与交互逻辑的经典应用领域,其核心在于游戏循环、实时渲染和物理模拟。通过事件驱动架构,游戏引擎能够高效处理用户输入、状态更新与画面绘制,实现流畅的交互体验。在技术层面,碰撞检测、抛物线运动计算等物理引擎原理是构建逼真游戏世界的基础,这些技术不仅提升了游戏的可玩性,也为AI模拟、虚拟现实等前沿领域提供了底层支持。Pygame作为轻量级的2D游戏开发库,以其简洁的API和跨平台特性,成为学习游戏开发与物理模拟的理想工具。本文以经典游戏《愤怒的小鸟》为案例,详细解析如何利用Pygame实现弹射

anchang7456的博客 453

《中国电信运营商骨干网:历史、现状与未来演进》系列 第一篇:中国骨干网全景图:一级运营商与专用网络的演进

揭秘国家信息高速公路!一文读懂什么是骨干网,它如何支撑我们的数字生活,以及电信、联通、移动、广电等巨头如何构建这张“国家级动脉”。

maqh_csdn的博客 2036

JavaEE学习记录2(JavaOO 知识回顾)

1.super()与this()的区别: this():当前类的对象,super父类的对象。super():在子类访问父类的成员和行为,必须受类继承规则的约束。 而this它代表当前对象,当然所有的资源都可以访问。在构造函数中,如果第一行没有写super(),编译器会自动插入。但是如果父类没有不带参的构造函数,或这个函数被私有化了(用private修饰)。此时你必须加入对父类的实例化...

117

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

基于ENSP——super-vlan(聚合vlan)与ARP代理实验配置

【代码】华为ENSP——super-vlan(聚合vlan)与ARP代理实验配置。

2303_77224751的博客 1164

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

icpc冬令营Day1

冬令营第一天记录 因为种种不可抗力因素,简单写写题解。 第一题:Specialized Four-Digit Numbers 这个题是个水题写几个函数就过了 题干 Find and list all four-digit numbers in decimal notation that have the property that the sum of its four digits equals the sum of its digits when represented in hexadecimal (

FloatingDream00的博客 452

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

【Mysql】记录MySQL中常见的错误代码及可能原因

梳理了一下近期大家在使用mysql中经常遇到的问题提示,有的是在navicat等连接工具上出现,有的是在代码中调用过程中出现的,做了一个常见的错误汇总和原因,作为参考,希望可以帮大家定位问题;

一捌柒的博客 1441

CGAL5.1编译记录

PCL提供的ICP算法使用效果不太满意,尝试使用CGAL的super 4PCS配准方法。先配置环境编译CGAL,把过程记录下来,主要参考了这一篇。 环境是win7+vs2017。 一、准备: 从官网下载CGAL源码,地址https://www.cgal.org/。这里下载最新版5.1. 下载Eigen并解压,地址:Eigen官网。这里下载最新版3.3.8。 还有一些其他的依赖,之前已经安装过了,有CMake,Zlib1.2.11,Boost1.73.0。 二、添加环境变量: 添加BOOST_INCLUD

hdfidfdslfdfsd的博客 978

nas918+支持的cpu_微星Afterburner超频软件更新:支持对RX 5700和RTX Super显卡的电压调整...

微星的综合型应用软件Afterburner近期更新了4.6.2 Beta 2版本,除了集成的RivaTuner Statistics Server升级到v7.2.3,软件这一次的重点是增加了对AMD Navi架构的RX 5700系列显卡以及NVIDIA RTX Super系列显卡的电压控制功能。MSI Afterburner是微星收购RivaTuner后开发的一款显卡超频工具,支持AMD和NVID...

weixin_39723920的博客 367

Java学习笔记——动力节点老杜(某站2000万播放)

本人总结的动力节点老杜Java学习笔记,某站2000万播放,绝对是java入门的好视频。

qq_73210658的博客 2414
上一篇: Super Pig游戏开发记录(1)
下一篇: Super Pig游戏开发记录(3)
云瑀
博客等级 码龄17年 502粉丝 150原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值