tga3c

时间:2024-08-02 19:31:49编辑:流行君

直线方程的应用

试题 已知△ABC中,A(1,3),AB、AC边上的中线所在直线方程分别为x-2y+1=0和y-1=0,求△ABC各边所在直线方程.考点:直线的一般式方程.专题:综合题.分析:B点应满足的两个条件是:①B在直线y-1=0上;②BA的中点D在直线x-2y+1=0上.由①可设B(xB,1),进而由②确定xB值,得到B点坐标;同理设出点C的纵坐标,根据中点坐标公式和C在x-2y+1=0上可求出C点坐标,然后利用两点式分别求出三边所在的直线方程即可.解答:解:设B(xB,1)则AB的中点
∵D在中线CD:x-2y+1=0上
∴,
解得xB=5,故B(5,1).
同样,因点C在直线x-2y+1=0上,可以设C为(2yC-1,yC),
根据=1,解出yC=-1,
所以C(-3,-1).
根据两点式,得直线AB的方程为y-3=(x-1);
直线BC的方程为y-1=(x-5);
直线AC的方程为y-3=(x-1)
化简得△ABC中直线AB:x+2y-7=0,
直线BC:x-4y-1=0,
直线AC:x-y+2=0.点评:此题是一道综合题,要求学生灵活运用中点坐标公式,掌握点在直线上则点的坐标满足直线方程化简求值,会根据条件写出直线的一般式方程.


直线的应用

平面几何:平行和相交在同一平面的两条直线之间,有平行、相交(包括垂直)、重合三种位置关系。设直角坐标平面上两条直线的方程分别为:L1:a1X+b1Y+c1=0L2:a2X+b2Y+c2=0当a1/a2≠b1/b2 则两直线相交当a1/a2=b1/b2≠c1/c2 则两直线平行当a1/a2=b1/b2=c1/c3 则两直线重合当a1a2+b1b2=0 则两直线垂直空间几何:异面,平行和相交l1:x=kz+b,y=lz+a l2:x=k1z+b1,l1z+a1=y相交:有公共点平行:k1/k=l1/l异面:无公共点且k1/k≠l1/l垂直:k*k1+l*l1=-1 一次函数y=kx+b(x∈R,k∈R,b∈R,y∈R)的图象是一条直线,其与y轴交于(0,b),与x轴交于(-b/k,0)仰角(与x轴正半轴的交角θ∈(0,π))满足(1)当θ∈(0,π/2)时,θ=arctan k(2)当θ∈(π/2,π)时,θ=π + arctan k

锐角三角形三个角分别是多少度?

锐角三角形是指每个角都小于90的三角形,是不能直接判断每个角分别等于多少的。锐角三角形的特点:1、大于0°而小于90°的角,叫做锐角。2、锐角三角形的三个角都是锐角。3、设锐角三角形的三边ac^2。4、锐角三角形的每条高均在三角形内。5、三内角和180°,外角和360°。6、设锐角三角形的三边a、b、c则a+b>c。直角钝角锐角三角形的区分1、角度区分钝角是指大于90度小于180度的角。直角是指90度的角。锐角是指大于0度小于90度的角。在三角形中,有一个角是钝角的三角形叫做钝角三角形;有一个角是直角的叫做直角三角形;三个角都是锐角的三角形叫做锐角三角形。2、三边关系a^2+b^2=c^2,直角三角形。a^2+b^2>c^2,锐角三角形。锐角三角形三边关系是两边平方和大于第三边平方。钝角三角形三边关系是两短边平方和少于钝角所对边的平方。证明很简单,利用余弦定理一步可证。3、做高方法锐角三角形作高方法是从三角形的一个顶点到它的对边做一条垂线,顶点的垂足之间的线段,就是三角形的高。直角三角形作高方法就是直角边,另外一条锐角三角形作高的做法。钝角三角形作高方法是从三角形的一个顶点到它的对边做一条垂线,顶点的垂足之间的线段,就是三角形的高,不过有两条的对边需要延长。

锐角三角形多少度?

锐角三角形是小于90度的三角形。锐角三角形和钝角三角形统称斜三角形。大于0°而小于90°的角,叫做锐角。锐角三角形是指每个角都小于90度的三角形,是不能直接判断每个角分别等于多少的。锐角三角形里面只有一种特殊的三角形能判断它的角的大小,那就是等边三角形,每个角都是60。设锐角三角形的三边a

玩3D游戏就死机的原因与解决方法

  有很多小伙伴反映他们的电脑一玩3D游戏就死机,而玩其他的2D游戏什么的却不会死机,遇到这种情况我们具体该怎么解决呢?下面就由我跟大家分享一下解决方法吧,欢迎大家来阅读学习。    玩3D游戏就死机的原因与解决方法   由于只是玩3D的游戏才会死机,所以重点检查与游戏有关的硬件设备。   显卡的驱动的兼容性问题。   显卡出现兼容性的问题   游戏软件出现兼容性的问题。   解决方案;在显卡官网上下载最新的驱动程序,然后安装最新的驱动程序。   启动电脑试试看。   已经是最新的话就用以前的试试


电脑玩3D游戏游戏卡死

你好,很高兴回答你的问题。
近来,很多人都向我咨询电脑玩大型3d游戏时会出现各种黑屏,重启,死机等现象,结合多年维修经验,给出一些解决的办法。 软件方面:1:先对系统全面杀毒,然后对系统全面清理,特别是系统盘,有很多电脑都是因为系统盘变小,加之内存不大,导致电脑的virtual内存不足。便不能运行大型游戏。2:开始---运行,在框中输入dxdiag检查一下directdraw加速是否启用,direct3d是否启用,如果没启用,把它开启。如果没有安装direct就赶快找最新版本安装它。3:有很多人在按显卡驱动时不安装net导致显卡驱动不能及时升级,当游戏升级后显卡驱动却不升级,也能导致电脑玩游戏时出问题。4:实在不行就重装系统,装系统时重新分区,把系统所在分区适当分大点。 硬件方面:1:显卡:是否有松动,散热是否良好,金手指是否有氧化现象。2:cpu散热是否良好。3:内存是否松动,金手指是否氧化。4硬盘:硬盘是否有坏道,可以用ndd软件扫描并修复。5:电源:电源供电是否够用,这是很多人经常忽略的,也是最有可能的原因
希望能够帮到你。


如何使用Base64进行加密和解密

其实Base64的加密和解密的算法不是很复杂,首先是定义自己64位的密钥,64个字符是固定,但是顺序是可以随自己的设计而变化。例如:
char[] BaseTable=new char[64]{
'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',
'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',
'0','1','2','3','4','5','6','7','8','9','+','/'};

接下来,在加密的时候就是对于需要加密的每个字符,通过一定的算法,转换成上面64字符的一种;而在解密的时候则是把64字符中任意一个字符反算出加密前的字符。对于每个字符的操作有很多方法,这里就不一一介绍了。需要注意的是“=”字符,在Base64加密算法中,是很重要的,它是起到补零作用。

以下是完整代码:
//----------------------------- Base64 class --------------------------------------
//---------------------------------------------------------------------------------
//---File:clsBase64
//---Description:The class file to encode string or decode string in base algorith
//---Author:Knight
//---Date:Oct.8, 2005
//---------------------------------------------------------------------------------
//----------------------------{ Base64 class }-------------------------------------
using System;

namespace Base64
{
///
/// Summary description for clsBase64.
///
public class clsBase64
{
private char[] source;
private char[] lookupTable;
private int length, length2, length3;
private int blockCount;
private int paddingCount;

public clsBase64()
{
//
// TODO: Add constructor logic here
//
source = null;
length = length2 = length3 =0;
blockCount = 0;
paddingCount = 0;
}

///
/// Create base64 char array using default base64 char array
///
///
/// return the new base64 char array
private char[] CreateBase64Char( ref char[] CreatePara )
{
char[] BaseTable=new char[64]{
'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',
'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',
'0','1','2','3','4','5','6','7','8','9','+','/'};

const int CREATE_TYPE = 8;
byte bParaValue = 0;
byte bTemp;
for( int i = 0; i < CreatePara.Length; i++ )
{
bTemp = ( byte )( CreatePara[i] );
switch( bTemp % CREATE_TYPE )
{
case 1:
// 00000001
bTemp =( byte )( bTemp ^ 0x01 );
break;
case 2:
// 00000010
bTemp =( byte )( bTemp ^ 0x02 );
break;
case 3:
// 00000100
bTemp =( byte )( bTemp ^ 0x04 );
break;
case 4:
// 00001000
bTemp =( byte )( bTemp ^ 0x08 );
break;
case 5:
// 00010000
bTemp =( byte )( bTemp ^ 0x10 );
break;
case 6:
// 00100000
bTemp =( byte )( bTemp ^ 0x20 );
break;
case 7:
// 01000000
bTemp =( byte )( bTemp ^ 0x40 );
break;
default:
// 10000000
bTemp =( byte )( bTemp ^ 0x80 );
break;
}
bParaValue =( byte )( bParaValue ^ bTemp );
}

char chrTemp;
int nIndex;
switch( bParaValue % CREATE_TYPE )
{
case 1:
// Exechange 0 1, 2 3, 4 5, 6 7
for( int i = 0; i < BaseTable.Length / CREATE_TYPE; i++ )
{
nIndex = i * CREATE_TYPE;
chrTemp = BaseTable[nIndex];
BaseTable[nIndex] = BaseTable[nIndex + 1];
BaseTable[nIndex + 1] = chrTemp;
chrTemp = BaseTable[nIndex + 2];
BaseTable[nIndex + 2] = BaseTable[nIndex + 3];
}
//remove paddings
length3=length2-paddingCount;
byte[] result=new byte[length3];

for(int x=0;x {
result[x]=buffer2[x];
}

return result;
}

private byte char2sixbit(char c)
{
if( c=='=' )
return 0;
else
{
for (int x=0;x中将势力2和3的控制者设置为玩家/User,否则在游戏里就不能选择势力2,3了。


刷兵(有的地方把这个叫做孵蛋,我完全不能理解…………)。简单解释就是每隔一定时间产生一些单位在基地附近,那么废话不多说,下面开始介绍怎样制作。

大家都知道在3C中兵是每隔一定时间就会自动产生的,在触发器中,我们将这种每隔固定时间就会自动发生一次的事件叫做“周期性事件”,一般来说经常通过以下两种途径来实现事件的周期发生:
==========================方法1=========================================
第一种是通过触发器中的循环事件来实现的(也有将这个叫做回圈的),在触发器中新建一个Action(动作),在下拉菜单中找到这样的句子——For Each Integer A,Do Multiple Actions(对于所有的整数数值A,执行若干动作),点击确定以后会看见在Actions(动作)这个类下面已经增加了这样的一个Action(动作):

For each (Integer A) from 1 to 10, do (Actions)
Loop - Actions
(对于所有的整数值A,从1到10,执行动作 循环 - 动作)

我详细解释一下这个Action的作用,For each (Integer A) from 1 to 10(对于所有的整数值A,从1到10)的意思是重复执行10次Loop -

Actions(循环 - 动作)中指定的Actions(动作),同样的道理如果将后面的from 1 to 10(从1到10)改成from 1 to 20(从1到20)那么就

会重复执行20次动作,假设是from 5 to 10则只会执行5次动作,至于为什么不直接用from 1 to 5来代替from 5 to 10,这是在某些时候必须

用到的功能,至于具体使用的时机,为了不使大家头脑混乱,现在暂时不做解释,等到实际使用中遇到类似情况再做说明。
--------------------------范例-------------------------------------
现在为了更形象的说明这个功能,我们来做个简单的范例,按F4打开触发器编辑器,新键一个Event(事件):Player - Player 1 (Red)

skips a cinematic sequence“玩家 - 玩家 1(红色)跳过一段电影序列”,这个事件的建立方法是鼠标右键 - New Event(新事件) -

Player(玩家) - Cinematic Skipped(电影被跳过),这个事件的作用是当玩家1按下ESC键的时候就会触发动作。接着增加一个动作

For each (Integer A) from 1 to 10, do (Actions)
Loop - Actions

这样就将需要重复执行动作的次数定为10次,然后在Loop - Actions下面依次添加这些动作:
Game - Display to (All players) the text: (String((Integer A)))
(游戏 - 向所有玩家显示信息 : 将作为循环序列的整数A的值转换为字符串类型[关于数据类型,这里不多做解释,大家只需要知道只有字符串类型的数据才能被作为信息显示出来就可以了]。在这里“作为循环序列的整数A”其实就是用来记录已经重复执行了多少次动作的一个数值。)添加这个动作的顺序为New Action(新动作) - Game(游戏) - TextMessage(Auto-Timed)(显示信息,自动调整信息显示时间)
Wait 1.00 seconds
(等待1.00秒,这样在每次执行动作以后都会间隔1秒才执行下一次动作)添加这个动作的顺序为New Action(新动作) - All(所有) - Wait(等待)。
然后在整个循环Action(动作)的后面(注意,是在整个For Each Integer的后面,不要添加到Loop - Actions下面去了)添加这个

Action(动作):
Game - Display to (All players) the text: (finish)
作用是在整个循环结束以后显示一句话以标明循环结束了。当然其中的finish大家可以随自己爱好随意更改。

最后将Melee Initialization(地图初始化)这个触发删除掉,在地图上放置玩家开始点,按Ctrl + F9进游戏测试,可以看见在游戏中当按下ESC键以后会分10次每秒一次依次显示数字1~10,最后则会显示finish。通过这个例子可以很清楚的看出。For each (Integer A) from 1 to 10, do (Actions)这个动作可以让位于Loop - Actions下面的动作重复执行from 1 to 10中后面数字+1减去前面数字的次数,而当所有的重复次数被执行完毕以后,则会继续执行整个循环后面的动作。这样就很简单方便的实现了周期性事件的执行,但是用这个Action(动作)实现的周期性事件有两个弊端,第一是循环执行的次数有限,大家也看见了,在这个Action中无论如何也要求输入2个数字以确定执行次数;第二是每次执行动作之间的时间间隔有最小限制,在上面的例子中,大家将Wait 1.00 seconds(等待1秒)改为Wait 0.00 seconds(等待0秒)以后进入游戏测试,会发现即使是0秒,也会有微小的等待时间(大概0.1~0.4秒左右,视电脑配置而定),这样在执行某些重复时间间隔很小的周期性事件的时候,就完全无法实现了,对于必须排除以上两种限制的周期事件,就必须用到另外一种方法,periodic event(周期循环事件),和For each Integer不同的是,这是一个Event(事件)而不是一个Action(动作)。


==========================方法2=========================================
添加这个事件的方法:New Event(新事件) - Time(时间) - Periodic Event(周期事件),添加完成以后可以看见在Event这一类下面出现了这样的Event(事件):

Time - Every 1.00 seconds of game time
(时间-每1.00秒游戏时间)作用很明显,就是每1秒都会执行一次Actions(动作)中包含的所有动作,Every 1.00 seconds中的数字用于指定每多少秒执行动作。对于这个事件的功能,我们仍然可以用1个简单的范例来说明。
--------------------------范例-------------------------------------
新建一个触发器,Event(事件)就用上面那个事件,将1.00调整为0.50,也就是每0.5秒执行1次,然后按下Ctrl+B打开变量编辑面板,(由于变量是第一次接触,所以我暂时不详细说明,大家按照我说的做就是了,以后会对变量和数据类型做详细介绍。)点击面板上方的绿叉按钮,在出现的窗口中下方的下拉菜单选择Integer(整数)然后在上面的输入栏中为这个变量随便起一个名字,[图:var.gif]这里我用的名字是i1便于下面统一介绍,这样就建立好了一个类型为“整数”型的变量。暂时将这个变量放在这里备用,回到刚才建的触发,在Actions(动作)类中添加如下动作:
Set i1 = (i1 + 1)
添加顺序:New Action(新动作) - All(所有) - Set Varible(设置变量)
这个Action(动作)的作用是每次循环执行动作的时候让i1这个整数的值等于它当前的值+1,比方i1当前的值是5那么执行动作以后i1的值就是

5+1,也就是6。
接着添加:
Game - Display to (All players) the text: (String(i1))

添加方法同上,作用是显示i1的值。
然后进入游戏测试,会看见在游戏中将自动以每0.5秒的速度显示数字,数值为上一次显示的数字+1。由此总结出Periodic Event(周期循环事件)的特点是会在激活触发以后以Event(事件)中规定的时间间隔来重复执行Actions(动作)中包含的所有动作,并且只要该触发没有被关闭,就会一直执行下去。
========================================================================

以上就是两种最常见的周期性事件的实现方法,那么在此理论基础上我简单叙述一下刷兵触发的原理。
刷兵触发就是一个周期事件,其动作的内容就是在指定位置创建单位,下面我简单的将这个触发写一下,并且加上少许说明。相信大家在对上面所讲的内容理解了的情况下应该立刻明白其中的道理。
Untitled Trigger 003
Events
Time - Every 3.00 seconds of game time [这个就是前面讲到的周期事件,在这里将周期的时间间隔设置为3秒]
Conditions
(Farm 0009 is alive) Equal to True [这里Farm 0009 是一个农场,整个Condition(条件)的意思是,如果农场0009仍然生存,则继续执行Actions(动作)中的指令]添加这个Condition的方法是New Conditions(新条件) - Boolean Comparison(布尔判断,也就是逻辑判断) - 选择图示位置[图:boolean.gif] - Unit-Unit is Alive(单位 - 单位仍然生存)
Actions
Unit - Create 1 Giant Wolf for Player 1 (Red) at (Position of Farm 0009 ) facing Default building facing degrees
[单位 - 为玩家1(红色)创建一只狼在农场0009所在的位置面向系统默认的方向]
整个触发如果用语言表达的意思就是,每隔3秒钟只要农场0009依然存活,就创建一只狼在农场所在的位置。
进入游戏进行测试以后,大家应该不难发现这个触发有这样一个弊端:创建的单位没有数量限制,哪怕地图上已经有了几百,几千只狼,只要农场0009仍然存活,就会不断有新的狼产生,对于这种情况,我们可以通过加入如下的一个简单条件来给予限制:
(Number of units in (Units in (Playable map area) matching (((Unit-type of (Matching unit)) Equal to Giant Wolf) and (((Matching unit) is alive) Equal to True)))) Less than 5
整句条件的意思是,如果地图上所有存活的狼的数量小于5只,则继续执行Actions(动作)类中指定的动作。其中units in Units in (Playable map area) 就是指整个地图上的单位,而(Unit-type of (Matching unit)) Equal to Giant Wolf是指符合“单位类型为狼”这个条件的所有单位,(Matching unit) is alive) Equal to True是指所有“仍然存活”的单位。由于这个条件比较复杂,下面列出详细的添加方法:
New Conditions(新条件) - Integer Comparison(整数判断)

- 在下拉菜单中选择“Unit in Region Matching Condition(区域内匹配条件的单位)”

- 在下拉菜单中选择“And” - 点击“Condition1(条件1)” - 在下拉菜单中选择“Unit-Type Comparison(单位-类型判断)”

- 点击“Triggering Unit(触发单位)”将之改为“Matching Unit(匹配单位)” - 连续确定2次,点击“FootMan(步兵)”将之改为你在Action(动作)中所指定的生产单位种类,在这里我选择的是“狼” 接下来点击“Condition2(条件2)” - 点击图示位置[图bolc.gif] - 在下拉菜单中选择“Unit is Alive(单位仍然存活)” - 点击“Triggering Unit(触发单位)”将之改为“Matching Unit(匹配单位)”,连续确定2次

最后一直点击确定回到第一层菜单将中间的“Equal to(等同于)”改为“Less Than(小于)”,再点击最后那个0将其改为你所希望的最大出兵数量,到此整个Condition(条件)就完成了
以上就是一个限制了出兵最大数量的刷兵触发的基本原理,但是在实际制作中并不是这么简单,对应很多情况需要做出调整,有兴趣的可以自己去研究研究。


Q:什么是Object Editor?

Object Editor就是对象编辑器,其中包含了单位编辑器,技能编辑器,装饰物编辑器,科技编辑器等,可以允许地图制作者修改已有的上述对象或者建立新的对象。
打开对象编辑器的方法是在地图编辑窗口按F6或者点击快截工具栏中的头盔样按钮。


Q:什么是Trigger?

Trigger就是触发器,在地图编辑窗口按F4或者点击快截工具栏中的带有a字的按钮即可打开Trigger Editor(触发器编辑器)。
触发器是地图编辑器中用于控制地图中所发生的事件的工具,一个基本的触发器由Event(事件),Condition(环境/条件),Action(动作)三部分组成。下面用一个简单的例子来说明这三部分之间的关系:“你在此论坛提出的有价值的问题都会得到解答”
如果将上面这句话看做一个触发器,那么“你提出问题”就是整个触发器的Event(事件),接下来要发生的一切,不管是“我们为你解答问题”或者“我们不理会你”,都是在“你提出问题”之后发生的。
而限制你所提出的问题是否会得到解答的条件则是“你提出的问题有价值”,也就是整个触发器的条件,这个条件直接影响你“是否得到我们的解答”。
最后,当你提出的问题满足“有价值”这个条件的时候,就会发生“我们为你解答问题”这个动作,也就是整个触发器的动作。


Q:什么是JASS?

JASS是用于编辑地图的一种简单的语言,可以说是文本化以后的触发器(地图脚本:MAP SCRIPTS),但是由于触发器并没有提供JASS所具备的

所有功能,所以可以说JASS在某种意义上是触发器功能的扩展。
编辑JASS可以通过以下三种途径:
1, 在触发编辑器(TRIGGER EDITOR)中,通过 MENU -> EDIT -> CONVERT TO CUSTOM TEXT 可以将当前选定的触发转换成脚本模式,也就是以JASS编辑的模式。
2,在触发编辑器中点击触发树(TRIGGER TREE,就是最左边列出所有触发的地方)的最顶端地图名,可以进入自定义脚本功能块,在这里可以用 JASS 写需要的函数,并且在其他的触发器中通过命令来调用。
3,使用 ACTIONS 中的 CUSTOM SCRIPT 动作可以在触发中插入一行 JASS 脚本代码。


Q:什么是“高级-游戏平衡常数”(英文名称Advanced - Gameplay Constants)

最上方菜单左起第7个菜单上数第4个选择,这个选项里面包括了很多不能用T修改但是很有用的设置。比如买卖东西的距离,各种攻击类型对防御类型的伤害,英雄的等级经验复活数据等等。


Q:地图扩展名中的w3m,w3x,w3n,w3g分别是什么意思?

w3m:混乱之制(roc)版本的地图。
w3x:冰封王座(tft)版本的地图。
w3n:战役地图,这类地图必须放在War3(魔兽)目录下的Campaigns(战役)文件夹中才能使用。
w3g:游戏录象,位于War3(魔兽)目录下的Replay文件夹下。


E:地图类型解释

Melee - 对战地图,即 War3 默认的游戏方式,BN Ladder 指定游戏类型。
Non-Melee - 除了 melee 以外的所有类型统称。
Custom - 非官方地图,但是通常表示 非官方的 non-melee 地图。
RPG - Role Play Games(角色扮演)~~但是现在很多人把所有 Non-Melee 地图都叫成 RPG。
Mini - 迷你游戏,通常指没有突出剧情、快节奏、游戏周期短的地图,没有固定的游戏方式,不含 rpg 。
Offence - 通常是对抗性地图统称,有时也表示一些进攻npc为主题的地图。
3C - Offence 的一种,本来只是一个地图的名称,通常是指 有 3条进攻路线的 Offence 。
Arena - Offence 一种,竞技场,通常是指选定英雄后在固定区域内进行决斗的地图。
Defence - 通常是指防守性地图统称,有时候也表示一些在非平衡的 NPC进攻前提下的防守与反攻。
TD - Defence 的一种,建造 Tower(炮台) 防守 NPC 有规律的进攻。
Cutscene - 通常是指剪辑影片,内容比较简单。(非 CG )
Cinematic - 通常是指完整影片,内容比较丰富。(非 CG )


常见问题解答

Q:我已经把Player 1 的种族设成Human,为什麽进入地图的时候又变回Random?
A:把Scenario => Force Properties => Fixed Player Settings打勾,如此一来,前面Player Properties设定的种族、操控者、颜色,都会被锁定


Q:如何在WE中的Object Editor输入负数而不会自动归零?
A:因为B社担心一些非法数值会对游戏稳定度造成影响,因此限制了数值的范围。进入WE后,工具列File => Preferences => Allow negative real value in the Object Editor 打勾,就能在Object Editor中输入real负数而不会自动归零(Integer仍会自动归零)。另外,按住shift+enter再修改数值,不会受到任何限制。请注意,虽然可以输入数值而不被限制,不过如果因为非法的数值导致电脑读不出来,玩游戏时可能会当机。


Q:如何提升世界编辑器的速度?
A:
关掉笔刷--把工具列的Windows => Brush List关掉。可以大幅提升速度。
减少自订资料--在Object Editor(物件编辑器)允许自订物件,但是自订的物件越多,WE就会越lag,其中尤以自订单位的影响最严重。笔者曾经建立200多个自订单位,结果WE速度大约慢到剩1/3,而且按什麽钮都会lag一下;后来把自订单位删掉,直接修改内建的单位,速度就大幅地改善了。所以,尽量直接修改内建的物件(含单位、可破坏物件、物品、技能、……等),少用自订物件。减少预置的物件--放置的单位、物品、可破坏物件和饰物放得越多,WE的速度就越慢(但是并不明显)。区域、摄影机和地形的影响则很小,几乎可以忽略。


Q:为什麽在测试地图时,所有的随机数值都一样?例如武士(Footman, dmg=12~13)第一次攻击一定是12?
A:进入WE后,工具列File => Preferences => Test Map => Use Fixed Random Seed取消打勾。


Q:如何把英雄等级上限设定超过10级?Q:如何使英雄5级后打中立怪还有经验值?Q:TFT版本中英雄即使不在战场,也会吸到经验值,如


魔兽地图编辑器地形教程,如何制作较好的地形,和地形基础。

善用基本的地形装饰物,并且预设好他们的路径纹理为无,这样方便调整——短墙尽头,书架等,可以磊落成台阶,塔等。
善用不可见平台和路径阻断器,能搭配更多装饰物做到神奇的效果。
拱门,建筑等可以调整角度来做出不同的效果,比如拱门围成一个圈就是一个圆形的球
地形纹理需要注意不同纹理的搭配,有两种,一种是覆盖纹理,一种是普通纹理,两者可以混合搭配突出重点或者作出柔和地形的效果,你不会在城邦的白地板上面放一堆鹅卵石小路。。
悬崖如果无法得到满意的效果可以上升地表来进行模拟,并且加入一些草和岩石作为遮掩,加入路径阻断器做到真实效果,如果你做的悬崖纹理不好,你可以通过加入灌木等来柔和纹理的边缘。
纯手打,非复制,原创,望采纳,如果还有想要帮助的随时可以去魔兽地图编辑器吧提问


上一篇:尾翼

下一篇:直销堂网